From 1dc51a85dda35832984f8941251cdeb7df8bd464 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 03:43:56 +0100 Subject: [PATCH 01/29] [ODM-13126] Add json file --- Earthfile | 3 ++- build.gradle.kts | 2 ++ .../openapi/DownloadSpecification.kt | 2 ++ .../genestack/openapi/MergeSpecifications.kt | 22 +++++++++++++++---- 4 files changed, 24 insertions(+), 5 deletions(-) diff --git a/Earthfile b/Earthfile index 4def18b5..db7003b0 100644 --- a/Earthfile +++ b/Earthfile @@ -148,7 +148,7 @@ swagger: COPY +build/v1 /usr/share/nginx/html/yaml/ COPY openapi/swagger/fs / - RUN rm -f /usr/share/nginx/html/yaml/odmApi.yaml + RUN rm -f /usr/share/nginx/html/yaml/odmApi.yaml /usr/share/nginx/html/yaml/odmApi.json RUN apk add bash --no-cache && \ rewrite_entrypoint.sh && \ apk del bash && \ @@ -171,6 +171,7 @@ stoplight: COPY +build/v1/schemas /usr/share/nginx/html/schemas/ COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ + COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / ARG --required OPENAPI_VERSION diff --git a/build.gradle.kts b/build.gradle.kts index 579d27c3..b199067f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,6 +26,7 @@ val processorsControllerFilePath = "${sourceDirectory}/${processorsControllerFil val openApiVersion: String = System.getenv("OPENAPI_VERSION") val mergedFileName = "odmApi.yaml" val mergedFilePath = "${sourceDirectory}/${mergedFileName}" +val mergedFilePathJson = "${sourceDirectory}/odmApi.json" tasks { val downloadSpec by registering(DownloadSpecification::class) { @@ -45,6 +46,7 @@ tasks { .map { layout.projectDirectory.file("${sourceDirectory}/${it.name}") } }) outputFile.set(layout.projectDirectory.file(mergedFilePath)) + outputFileJson.set(layout.projectDirectory.file(mergedFilePathJson)) } val generateOdmApiPython by registering(GenerateTask::class) { dependsOn(mergeSpecifications) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt index 0cc292c4..afc97b81 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt @@ -22,9 +22,11 @@ abstract class DownloadSpecification : DefaultTask() { val version = project.objects.property() @Input + @Optional val registryUsername = project.objects.property() @Input + @Optional val registryPassword = project.objects.property() @Input diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt index dae4115f..72e323f8 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt @@ -4,11 +4,14 @@ import org.gradle.api.DefaultTask import org.gradle.api.file.RegularFile import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty +import org.gradle.api.tasks.Optional import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.InputFiles import tools.jackson.databind.ObjectMapper +import tools.jackson.databind.SerializationFeature +import tools.jackson.databind.json.JsonMapper import tools.jackson.dataformat.yaml.YAMLFactory @@ -20,14 +23,25 @@ abstract class MergeSpecifications : DefaultTask() { @get:OutputFile abstract val outputFile: RegularFileProperty + @get:OutputFile + @get:Optional + abstract val outputFileJson: RegularFileProperty + @TaskAction fun merge() { - val objectMapper = ObjectMapper(YAMLFactory()) + val yamlMapper = ObjectMapper(YAMLFactory()) + val jsonMapper = JsonMapper.builder().enable(SerializationFeature.INDENT_OUTPUT).build() + val mergedNode = inputFiles .get().map { it.asFile } .filterNot { it == outputFile.get().asFile } - .map { objectMapper.readTree(it) } - .reduce { acc, node -> objectMapper.updateValue(acc, node) } - objectMapper.writeValue(outputFile.get().asFile, mergedNode) + .map { yamlMapper.readTree(it) } + .reduce { acc, node -> yamlMapper.updateValue(acc, node) } + + yamlMapper.writeValue(outputFile.get().asFile, mergedNode) + + if (outputFileJson.isPresent) { + jsonMapper.writeValue(outputFileJson.get().asFile, mergedNode) + } } } From 99dc1fb99796ec1f6b864da760066ecec00aeb97 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 04:06:29 +0100 Subject: [PATCH 02/29] [ODM-13126] Remove redundant annotations --- .../main/kotlin/com/genestack/openapi/DownloadSpecification.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt index afc97b81..0cc292c4 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt @@ -22,11 +22,9 @@ abstract class DownloadSpecification : DefaultTask() { val version = project.objects.property() @Input - @Optional val registryUsername = project.objects.property() @Input - @Optional val registryPassword = project.objects.property() @Input From fc4f921e176346251dce70d7a409e1b49a1120ec Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 10:18:28 +0100 Subject: [PATCH 03/29] [ODM-13126] All specs in one --- openapi/v1/cellCurator.yaml | 120 - openapi/v1/cellUser.yaml | 120 - openapi/v1/expressionCurator.yaml | 737 - openapi/v1/expressionUser.yaml | 682 - openapi/v1/fileCurator.yaml | 245 - openapi/v1/fileUser.yaml | 246 - openapi/v1/flowCytometryCurator.yaml | 744 - openapi/v1/flowCytometryUser.yaml | 688 - openapi/v1/integrationCurator.yaml | 7549 -------- openapi/v1/integrationUser.yaml | 5768 ------ openapi/v1/job.yaml | 863 - openapi/v1/libraryCurator.yaml | 470 - openapi/v1/libraryUser.yaml | 413 - openapi/v1/manageData.yaml | 189 - openapi/v1/odm.yaml | 24101 +++++++++++++++++++++++++ openapi/v1/odmApi.json | 21233 ++++++++++++++++++++++ openapi/v1/preparationCurator.yaml | 471 - openapi/v1/preparationUser.yaml | 414 - openapi/v1/referenceData.yaml | 307 - openapi/v1/referenceGenome.yaml | 189 - openapi/v1/sampleCurator.yaml | 398 - openapi/v1/sampleUser.yaml | 339 - openapi/v1/scimGroups.yaml | 373 - openapi/v1/scimUsers.yaml | 376 - openapi/v1/studyCurator.yaml | 397 - openapi/v1/studyUser.yaml | 340 - openapi/v1/tasks.yaml | 102 - openapi/v1/variantCurator.yaml | 713 - openapi/v1/variantUser.yaml | 714 - 29 files changed, 45334 insertions(+), 23967 deletions(-) delete mode 100644 openapi/v1/cellCurator.yaml delete mode 100644 openapi/v1/cellUser.yaml delete mode 100644 openapi/v1/expressionCurator.yaml delete mode 100644 openapi/v1/expressionUser.yaml delete mode 100644 openapi/v1/fileCurator.yaml delete mode 100644 openapi/v1/fileUser.yaml delete mode 100644 openapi/v1/flowCytometryCurator.yaml delete mode 100644 openapi/v1/flowCytometryUser.yaml delete mode 100644 openapi/v1/integrationCurator.yaml delete mode 100644 openapi/v1/integrationUser.yaml delete mode 100644 openapi/v1/job.yaml delete mode 100644 openapi/v1/libraryCurator.yaml delete mode 100644 openapi/v1/libraryUser.yaml delete mode 100644 openapi/v1/manageData.yaml create mode 100644 openapi/v1/odm.yaml create mode 100644 openapi/v1/odmApi.json delete mode 100644 openapi/v1/preparationCurator.yaml delete mode 100644 openapi/v1/preparationUser.yaml delete mode 100644 openapi/v1/referenceData.yaml delete mode 100644 openapi/v1/referenceGenome.yaml delete mode 100644 openapi/v1/sampleCurator.yaml delete mode 100644 openapi/v1/sampleUser.yaml delete mode 100644 openapi/v1/scimGroups.yaml delete mode 100644 openapi/v1/scimUsers.yaml delete mode 100644 openapi/v1/studyCurator.yaml delete mode 100644 openapi/v1/studyUser.yaml delete mode 100644 openapi/v1/tasks.yaml delete mode 100644 openapi/v1/variantCurator.yaml delete mode 100644 openapi/v1/variantUser.yaml diff --git a/openapi/v1/cellCurator.yaml b/openapi/v1/cellCurator.yaml deleted file mode 100644 index 127461f5..00000000 --- a/openapi/v1/cellCurator.yaml +++ /dev/null @@ -1,120 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving cells. - title: ODM API - version: default-released -tags: - - name: Cells as Curator -paths: - /api/v1/as-curator/cells/{id}: - get: - operationId: getCellByIdAsCurator - parameters: - - description: Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Cell" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided ID could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve a cell by ID - tags: - - Cells as Curator - /api/v1/as-curator/cells/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. - To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. - If there are no more results you will just retrieve an empty result. - operationId: getCellsByGroupAsCurator - parameters: - - description: Unique identifier (accession) of the cell group. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 10000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CellListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: { } - description: Cell data cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cells from a given group - tags: - - Cells as Curator -components: - schemas: - Cell: - $ref: "./schemas/cell/Cell.yaml" - CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/cellUser.yaml b/openapi/v1/cellUser.yaml deleted file mode 100644 index 9af2eb80..00000000 --- a/openapi/v1/cellUser.yaml +++ /dev/null @@ -1,120 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving cells. - title: ODM API - version: default-released -tags: - - name: Cells as User -paths: - /api/v1/as-user/cells/{id}: - get: - operationId: getCellByIdAsUser - parameters: - - description: Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Cell" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided ID could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve a cell by ID - tags: - - Cells as User - /api/v1/as-user/cells/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. - To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. - If there are no more results you will just retrieve an empty result. - operationId: getCellsByGroupAsUser - parameters: - - description: Unique identifier (accession) of the cell group. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 10000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CellListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: { } - description: Cell data cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cells from a given group - tags: - - Cells as User -components: - schemas: - Cell: - $ref: "./schemas/cell/Cell.yaml" - CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/expressionCurator.yaml b/openapi/v1/expressionCurator.yaml deleted file mode 100644 index 191d7c22..00000000 --- a/openapi/v1/expressionCurator.yaml +++ /dev/null @@ -1,737 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the expressionCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Expression SPoT as Curator -paths: - /api/v1/as-curator/expressions: - get: - description: |+ - Retrieve all expression data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getExpressionDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that corresponds to the column and is used to link data from the same - run to a sample, library or preparation. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minExpressionLevel - schema: - format: double - type: number - - description: "List of features to return. These features must match exactly\ - \ the probe IDs in the GCT file. Example: `1552269_at`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionResponse" - description: Retrieved Expression data. - "400": - content: {} - description: Expression data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple expression data and metadata objects - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchExpressionGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group/by/run/{id}: - get: - operationId: getExpressionGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group/{id}: - get: - operationId: getExpressionGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression group by ID (groupId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchExpressionRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/{id}: - get: - operationId: getExpressionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by ID (itemId) - tags: - - Expression SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateExpressionRunAsCurator - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update metadata object by expression object run ID (runId) - tags: - - Expression SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/expressions/{id}/versions: - get: - operationId: getExpressionVersionsAsCurator - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of expression object versions by run ID (runId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/{id}/versions/{version}: - get: - operationId: getExpressionByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the expression object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by run ID and its version - tags: - - Expression SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" - ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/expressionUser.yaml b/openapi/v1/expressionUser.yaml deleted file mode 100644 index b7f4e3b4..00000000 --- a/openapi/v1/expressionUser.yaml +++ /dev/null @@ -1,682 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the expressionUser API endpoints for ODM. These are typically used to find and retrieve any tabular data (not only expression data) except Gene Variant or Flow Cytometry. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Expression SPoT as User -paths: - /api/v1/as-user/expressions: - get: - description: |+ - Retrieve all expression data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getExpressionDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that corresponds to the column and is used to link data from the same - run to a sample, library or preparation. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minExpressionLevel - schema: - format: double - type: number - - description: "List of features to return. These features must match exactly\ - \ the probe IDs in the GCT file. Example: `1552269_at`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionResponse" - description: Retrieved Expression data. - "400": - content: {} - description: Expression data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple expression data and metadata objects - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchExpressionGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group/by/run/{id}: - get: - operationId: getExpressionGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group/{id}: - get: - operationId: getExpressionGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression group by ID (groupId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchExpressionRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}: - get: - operationId: getExpressionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by ID (itemId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}/versions: - get: - operationId: getExpressionVersionsAsUser - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of expression object versions by run ID (runId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}/versions/{version}: - get: - operationId: getExpressionByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by run ID and its version - tags: - - Expression SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" - ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/fileCurator.yaml b/openapi/v1/fileCurator.yaml deleted file mode 100644 index 591e3860..00000000 --- a/openapi/v1/fileCurator.yaml +++ /dev/null @@ -1,245 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving files. - title: ODM API - version: default-released -tags: - - name: Files as Curator -paths: - /api/v1/as-curator/files/{id}/download: - head: - description: |+ - Check if a file exists by its accession. - - This endpoint can be used to check if a file exists and accessible before downloading it. - operationId: headFileAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - description: File exists. Additional metadata is provided in the response headers. - "400": - content: {} - description: File cannot be downloaded. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to" - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - tags: - - Files as Curator - get: - description: |+ - Download a file by its accession. - operationId: getFileAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - name: Range - in: header - required: false - schema: - type: string - example: bytes=0- - description: | - Request a specific range of bytes to support partial downloads. - Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several - ranges is not supported. - responses: - "200": - description: File downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "206": - description: Partial content downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "400": - content: {} - description: File cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a file by ID (accession) - tags: - - Files as Curator - /api/v1/as-curator/files/{id}: - get: - operationId: getFileMetadataByIdAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/AFile" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by ID (accession) - tags: - - Files as Curator - /api/v1/as-curator/files: - get: - operationId: getFilesMetadataAsCurator - description: |- - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects. - parameters: - - in: query - name: filter - description: Filter by files metadata (key-value metadata pair(s)). - schema: - type: string - - in: query - name: query - description: Search for files via a full-text query over all file metadata. - schema: - type: string - - in: query - name: includeContents - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - required: false - schema: - default: false - type: boolean - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by its fields - tags: - - Files as Curator -components: - schemas: - AFile: - $ref: "./schemas/afile/AFile.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/fileUser.yaml b/openapi/v1/fileUser.yaml deleted file mode 100644 index 6bbf2e5e..00000000 --- a/openapi/v1/fileUser.yaml +++ /dev/null @@ -1,246 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving files. - title: ODM API - version: default-released -tags: - - name: Files as User -paths: - /api/v1/as-user/files/{id}/download: - head: - description: |+ - Check if a file exists by its accession. - - This endpoint can be used to check if a file exists and accessible before downloading it. - operationId: headFileAsUser - summary: Check if a file exists by ID (accession). - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - description: File exists. Additional metadata is provided in the response headers. - "400": - content: {} - description: File cannot be downloaded. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to" - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - tags: - - Files as User - get: - description: |+ - Download a file by its accession. - operationId: getFileAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - name: Range - in: header - required: false - schema: - type: string - example: bytes=0- - description: | - Request a specific range of bytes to support partial downloads. - Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several - ranges is not supported. - responses: - "200": - description: File downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "206": - description: Partial content downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "400": - content: {} - description: File cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a file by ID (accession) - tags: - - Files as User - /api/v1/as-user/files/{id}: - get: - operationId: getFileMetadataByIdAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/AFile" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by ID (accession) - tags: - - Files as User - /api/v1/as-user/files: - get: - operationId: getFilesMetadataAsUser - description: |- - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects. - parameters: - - in: query - name: filter - description: Filter by files metadata (key-value metadata pair(s)). - schema: - type: string - - in: query - name: query - description: Search for files via a full-text query over all file metadata. - schema: - type: string - - in: query - name: includeContents - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - required: false - schema: - default: false - type: boolean - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by its fields - tags: - - Files as User -components: - schemas: - AFile: - $ref: "./schemas/afile/AFile.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/flowCytometryCurator.yaml b/openapi/v1/flowCytometryCurator.yaml deleted file mode 100644 index 813788db..00000000 --- a/openapi/v1/flowCytometryCurator.yaml +++ /dev/null @@ -1,744 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the flowCytometryCurator API endpoints for ODM. These are typically used to find and retrieve flow cytometry data and metadata as well as update metadata. - The APIs can be used for gated flow cytometry data in FACS format. For flow cytometry data in FCS format use expression endpoints. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Flow Cytometry SPoT as Curator -paths: - /api/v1/as-curator/flow-cytometries: - get: - description: |+ - Retrieve all flow cytometry data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getFlowCytometryDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that identifies a set of rows related to one run and is used to link - data from the run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" - in: query - name: readoutType - schema: - type: string - - description: |- - Value of "Cell Population" column. E.g.: `"total cells"`, `CD45+,live/CD45+`, `CD3+`. - - Note that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`. - in: query - name: population - schema: - type: string - - description: "Marker value. E.g.: `PD1`, `BV786`" - in: query - name: marker - schema: - type: string - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minValue - schema: - type: number - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryResponse" - description: Retrieved Flow Cytometry data. - "400": - content: {} - description: Flow Cytometry data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple flow cytometry data and metadata objects - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchFlowCytometryGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group/by/run/{id}: - get: - operationId: getFlowCytometryGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (accession) - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group/{id}: - get: - operationId: getFlowCytometryGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by ID (accession) - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchFlowCytometryRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/{id}: - get: - operationId: getFlowCytometryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateFlowCytometryAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update object metadata - tags: - - Flow Cytometry SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/flow-cytometries/{id}/versions: - get: - operationId: getFlowCytometryVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/{id}/versions/{version}: - get: - operationId: getFlowCytometryByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" - FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/flowCytometryUser.yaml b/openapi/v1/flowCytometryUser.yaml deleted file mode 100644 index 20ec634d..00000000 --- a/openapi/v1/flowCytometryUser.yaml +++ /dev/null @@ -1,688 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the flowCytometryUser API endpoints for ODM. These are typically used to find and retrieve flow cytometry data and metadata. - The APIs can be used for gated flow cytometry data in FACS format. For flow cytometry data in FCS format use expression endpoints. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Flow Cytometry SPoT as User -paths: - /api/v1/as-user/flow-cytometries: - get: - description: |+ - Retrieve all flow cytometry data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getFlowCytometryDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that identifies a set of rows related to one run and is used to link - data from the run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" - in: query - name: readoutType - schema: - type: string - - description: |- - Value of "Cell Population" column. E.g.: `"total cells"`, `CD45+,live/CD45+`, `CD3+`. - - Note that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`. - in: query - name: population - schema: - type: string - - description: "Marker value. E.g.: `PD1`, `BV786`" - in: query - name: marker - schema: - type: string - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minValue - schema: - type: number - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryResponse" - description: Retrieved Flow Cytometry data. - "400": - content: {} - description: Flow Cytometry data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple flow cytometry data and metadata objects - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchFlowCytometryGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group/by/run/{id}: - get: - operationId: getFlowCytometryGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group/{id}: - get: - operationId: getFlowCytometryGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchFlowCytometryRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}: - get: - operationId: getFlowCytometryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}/versions: - get: - operationId: getFlowCytometryVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}/versions/{version}: - get: - operationId: getFlowCytometryByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" - FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/integrationCurator.yaml b/openapi/v1/integrationCurator.yaml deleted file mode 100644 index 5173adbd..00000000 --- a/openapi/v1/integrationCurator.yaml +++ /dev/null @@ -1,7549 +0,0 @@ -openapi: 3.1.0 -info: - description: | - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM Integration API - version: default-released -tags: -- name: Cell integration as Curator -- name: Expression integration as Curator -- name: Files integration as Curator -- name: Flow Cytometry (FACS) integration as Curator -- name: Library integration as Curator -- name: Linkage as Curator -- name: Metadata versioning as Curator -- name: Omics queries as Curator -- name: Preparation integration as Curator -- name: Sample integration as Curator -- name: Study integration as Curator -- name: Validation summary as Curator -- name: Variant integration as Curator -paths: - /api/v1/as-curator/data-types: - get: - description: This endpoint is for instructional uses and can be used to get - the latest list of Data Types. - operationId: getDataTypesAsCurator - responses: - "200": - content: - application/json: - schema: - items: - type: string - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Lists all available data types. - tags: - - Linkage as Curator - /api/v1/as-curator/data-types/links: - get: - description: "This endpoint should be used for instructional needs, and can\ - \ be used in order to get the links between the Data Types." - operationId: getDataTypesLinksAsCurator - parameters: - - description: Return only links with the specified data type. - in: query - name: type - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/SourceTypePair" - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List all possible links between data types that match the specified - criteria. - tags: - - Linkage as Curator - /api/v1/as-curator/integration/link/expression/by/library/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByLibraryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related library ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/by/preparation/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByPreparation - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related preparation - ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related sample ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getExpressionGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId} - : post: - description: |- - Create a link between a group of cell expression objects and a group of cell metadata. - - A cell expression object can be linked to one cell metadata object only. - operationId: createExpressionGroupCellGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell expression group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the cell metadata group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) cell links were created. - "204": - content: {} - description: All links were created. - "400": - content: {} - description: "Incorrect Cell or Expression group provided, see error message for details." - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of cell expression objects and a group of cell metadata. - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - library objects - operationId: deleteExpressionGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of library - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of library objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) sample links created. - "204": - content: {} - description: Link created. - "400": - content: {} - description: "Library group, signal group or libraries to link not found" - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - library objects - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - preparation objects - operationId: deleteExpressionGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of preparation - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of preparation objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) sample links created. - "204": - content: {} - description: Link created. - "400": - content: {} - description: "Preparation group, signal group or preparations to link not\ - \ found" - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - preparation objects - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - sample objects - operationId: deleteExpressionGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of sample - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of sample objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createExpressionGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "400": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - sample objects - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToLibraryPairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToPreparationPairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ - \ unique runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}: - delete: - description: Delete link between an expression object and a library - operationId: deleteExpressionLibraryLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a library - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a library. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionLibraryLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a library - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}: - delete: - description: Delete link between an expression object and a preparation - operationId: deleteExpressionPreparationLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a preparation - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a preparation. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionPreparationLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a preparation - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between an expression object and a sample - operationId: deleteExpressionSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a sample - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a sample. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a sample - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry run-level data by querying related sample ID - (accession) - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getFlowCytometryGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Flow Cytometry (FACS) integration as Curator - ? /api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete link between a group of flow-cytometry objects and a group - of sample objects - operationId: deleteFlowCytometryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a FACS file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of flow-cytometry objects and a group of - sample objects - tags: - - Flow Cytometry (FACS) integration as Curator - post: - description: |- - Create a link between a group of flow-cytometry objects and a group of sample objects. - - A flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Flow-cytometry objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createFlowCytometryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a FACS file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of flow-cytometry objects and a group - of sample objects - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between a flow-cytometry object and a sample - operationId: deleteFlowCytometrySampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level data block - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a flow-cytometry object and a sample - tags: - - Flow Cytometry (FACS) integration as Curator - post: - description: |- - Create a link between a flow-cytometry object and a sample. - - A flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Flow-cytometry objects of the same group can only be linked to objects of the same study. - operationId: createFlowCytometrySampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level data block - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a flow-cytometry object and a sample - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/libraries/by/samples: - get: - description: |+ - Retrieve library metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibrariesBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related samples - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/by/sample/{id}: - get: - operationId: getLibraryBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related sample ID (accession) - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/group/by/study/{id}: - get: - operationId: getLibraryGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}: - delete: - description: Delete links between samples and libraries related to the specified - group - operationId: deleteLibraryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the library group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete links between samples and libraries related to the specified - group - tags: - - Library integration as Curator - post: - description: |- - Create links between samples and libraries. - - Library objects of the same group can only be linked to objects of the same study. - operationId: createLibraryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the library group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create links between samples and libraries - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibraryLinksToSamplesAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve library-samples pairs by group id. Pagination is based on\ - \ unique libraries, not unique pairs." - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}: - delete: - description: Delete a link between a library and a sample - operationId: deleteLibrarySampleLinkAsCurator - parameters: - - description: The ID (accession) of the library object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete a link between a library and a sample - tags: - - Library integration as Curator - post: - description: |- - Create a link between a library and a sample. - - Library objects of the same group can only be linked to objects of the same study. - operationId: createLibrarySampleLinkAsCurator - parameters: - - description: The ID (accession) of the library object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a library and a sample - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/preparation/by/sample/{id}: - get: - operationId: getPreparationBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related sample ID (accession) - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/group/by/study/{id}: - get: - operationId: getPreparationGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Preparation integration as Curator - ? /api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete links between samples and preparations related to the specified - group - operationId: deletePreparationGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the preparation group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete links between samples and preparations related to the specified - group - tags: - - Preparation integration as Curator - post: - description: |- - Create links between samples and preparations. - - Preparation objects of the same group can only be linked to objects of the same study. - operationId: createPreparationGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the preparation group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create links between samples and preparations - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationLinksToSamplesAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ preparations, not unique pairs." - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}: - delete: - description: Delete a link between a preparation and a sample - operationId: deletePreparationSampleLinkAsCurator - parameters: - - description: The ID (accession) of the preparation object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete a link between a preparation and a sample - tags: - - Preparation integration as Curator - post: - description: |- - Create a link between a preparation and a sample. - - Preparation objects of the same group can only be linked to objects of the same study. - operationId: createPreparationSampleLinkAsCurator - parameters: - - description: The ID (accession) of the preparation object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a preparation and a sample - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparations/by/samples: - get: - description: |+ - Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationsBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related samples - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}: - delete: - description: Delete link between a group of sample objects and a study - operationId: deleteSampleGroupStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of sample objects and a study - tags: - - Sample integration as Curator - post: - description: |- - Create a link between a group of sample objects and a study. - - Sample objects of the same group can only be linked to the same study. - operationId: createSampleGroupStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of sample objects and a study - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}: - delete: - description: Delete link between a sample and a study - operationId: deleteSampleStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a sample and a study - tags: - - Sample integration as Curator - post: - description: |- - Create a link between a sample and a study. - - Sample objects of the same group can only be linked to the same study. - operationId: createSampleStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a sample and a study - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/libraries: - get: - description: |+ - Retrieve sample metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related libraries - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/preparations: - get: - description: |+ - Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related preparations - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/study/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related study ID (accession) - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/studies/by/libraries: - get: - description: |+ - Retrieve study metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related libraries - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/preparations: - get: - description: |+ - Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related preparations - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/samples: - get: - description: |+ - Retrieve study metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by sample metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all sample metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related samples - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/study/by/sample/{id}: - get: - operationId: getStudyBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying sample ID (accession) - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/files: - get: - description: |+ - Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Attachment files (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByFilesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by attachment file metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all attached files metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related attachment files - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/study/by/file/{id}: - get: - operationId: getStudyByFileAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying attachment file ID (accession) - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/variant/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant run-level data by querying related sample ID (accession) - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getVariantGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}: - delete: - description: Delete link between a group of variant objects and a group of sample - objects - operationId: deleteVariantGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a VCF file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of variant objects and a group of sample - objects - tags: - - Variant integration as Curator - post: - description: |- - Create a link between a group of variant objects and a group of sample objects. - - A variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Variant objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createVariantGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a VCF file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of variant objects and a group of sample - objects - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between a variant object and a sample - operationId: deleteVariantSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a variant object and a sample - tags: - - Variant integration as Curator - post: - description: |- - Create a link between a variant object and a sample. - - A variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Variant objects of the same group can only be linked to objects of the same study. - operationId: createVariantSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a variant object and a sample - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/fulltext/search/studies: - post: - description: |- - Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned. - - The endpoint returns: - - a list of studies with their metadata summary; - - a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via "Configure facets" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted. - - Filter attributes for fulltext search: - - `"type": "FULL_TEXT"` - - `"match"` - - `"mode"` - - For details on two latter ones, see the request body model. Only one filter with `"type=": "FULL_TEXT"` can be passed in the request body. - - To filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed. - - It is possible to call the endpoint without any filters, then all the studies available to the user are returned. - operationId: searchStudiesByFilterAsCurator - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SearchStudyRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FindObjectsResponse" - description: The request was successful. Retrieved studies and filters. - "400": - content: {} - description: Invalid request body - "401": - content: {} - description: User is not authenticated. Please supply a valid Genestack - API token in the `Genestack-API-Token` HTTP header (this token may be - obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - summary: Find and retrieve studies by full-text or facet query - tags: - - Study integration as Curator - x-codegen-request-body-name: request - /api/v1/as-curator/links: - delete: - description: "This method should be used in case you want to delete the links\ - \ of an object. Please, keep in mind that deleting a link between Study and\ - \ Sample will not delete a link between corresponding Sample and it’s signal." - operationId: deleteLinkAsCurator - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - responses: - "204": - content: {} - description: Link has been successfully deleted. - "400": - content: {} - description: Invalid data in request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No links were found. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Deletes existing links matching the specified criteria. - tags: - - Linkage as Curator - get: - description: Please make sure that this endpoint should be used only for getting - all links to a specific object. In case you specify both firstId and secondId - an expected answer would be true for existing links and false for no link - between the objects. - operationId: getLinksByParamsAsCurator - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - - description: Param says to skip that many links before beginning to return - links. - in: query - name: offset - schema: - default: 0 - format: int32 - type: integer - - description: Param says to limit the count of returned links. - in: query - name: limit - schema: - default: 1000 - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Finds existing links matching the specified criteria. - tags: - - Linkage as Curator - post: - description: "This method should be used only in case you need to create links\ - \ between 2 objects. Links are created both ways (e.g. when linking Object\ - \ A to Object B it can be done both ways, by linking firstType to secondType\ - \ and vice versa)." - operationId: saveLinksAsCurator - requestBody: - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Link" - type: array - required: false - responses: - "200": - content: {} - description: Links were updated or not modified. - "201": - content: {} - description: At least one new link has been created.Some other links might - have been updated or not modified. - "400": - content: {} - description: Invalid data in request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "409": - content: {} - description: Link cannot be created due to conflict with existing link - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Creates new links between objects. - tags: - - Linkage as Curator - x-codegen-request-body-name: links - /api/v1/as-curator/links/get-batch: - post: - description: Please make sure to use that endpoint for batch calls only. You - are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same - time. Please always specify firstType. - operationId: getLinksByIdsAsCurator - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/BatchOfIds" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Finds existing links by passing many IDs. \nPagination goes through\ - \ all links matched the criteria." - tags: - - Linkage as Curator - x-codegen-request-body-name: request - /api/v1/as-curator/omics/cells: - get: - description: |- - Retrieve cell objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsAsCurator - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: | - Filter by library metadata (key-value metadata pair(s)). E.g. `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: | - Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: | - Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: | - Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to cell expression data and originally\ - \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the cell - \ measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`.\n - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve Cell objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/cells/expression/data: - get: - description: |- - Retrieve cell expression objects by searching across multiple metadata types. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsExpressionDataAsCurator - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cell expression objects by searching across multiple metadata types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/data: - get: - description: "Retrieve any data objects whose linked data matches all supplied\ - \ conditions.This endpoint does not support search by expression linked to Cell\ - \ group. Use /omics/cells/expression/data endpoint for search by Cell expression.\ - \n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ - It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ - \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ - 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ - \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ - \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ - \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ - \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ - \ backslash characters in the query need to be escaped with a backslash (`\\\ - `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ - \ an operator. The `=` operator matches literal values/string. The `!=` operator\ - \ matches anything except the literal value/string. The `<` or `>` operators\ - \ match numerical results that are less or greater than the supplied value.\ - \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ - \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ - \ The set of valid keys depends on the specific query type, and is documented\ - \ in the query parameter summary. The values can be simple non-whitespace\ - \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ - \ the value may be be a comma-delimited list of string values. Others require\ - \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter\ - \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ - \ to separate out the terms and operators. Parentheses `( )` can be used for\ - \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ - \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ - \ of an omics data file are associated via their CHAIN_ID metadata value.\ - \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ - \ version number or specific omics data file accessions to include them in\ - \ the query. If nothing is supplied to the useVersions parameter then only\ - \ the active version (which is usually the last one imported) is queried.\ - \ This acts as a filter before the rest of the query is carried out.\n\nExample\ - \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ - useVersions=v2 (query the second version. If there is no second version then\ - \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ - \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ - \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ - \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ - \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ - \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ - \ reasons this endpoint returns results in \"pages\" of limited size together\ - \ with a `cursor` tag. To retrieve the next page of results please supply\ - \ this `cursor` tag to resume the query from your previous result and get\ - \ the next page. To return all results iterate through pages using \ - \ cursor values until the `resultsExhausted` response field is true.\n\n" - operationId: omicsSearchExpressionDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve data objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchExpressionGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/streamed-data: - get: - description: |+ - Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute. - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Libraries (full-text or metadata key-value pair) - 3. Preparations (full-text or metadata key-value pair) - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedExpressionDataAsCurator - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Deprecated; use `exQuery` parameter instead. Filters results\ - \ by the feature column (e.g., Gene ID). The feature parameter value must\ - \ match the name of the identifier in the GCT file (under the NAME column).\ - \ Example: `ENSG00000077044`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: Accession of the expression group object (GCT) - in: query - name: groupAccession - required: true - schema: - type: string - - description: The number of digits after the decimal point for floating-point - values. The final value is rounded up. Must be non-negative. The default - is 4. - in: query - name: roundDigits - schema: - default: 4 - format: int32 - type: integer - responses: - "200": - content: - text/csv: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Expression data. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Stream data from a given tabular file - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/flow-cytometry/data: - get: - description: |+ - Retrieve flow cytometry data objects whose linked data matches all supplied conditions. - - Note: A flow cytometry data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry data objects by searching across multiple data - types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/flow-cytometry/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/samples: - get: - description: |+ - Retrieve sample metadata objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchSamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata objects by searching across multiple data - types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/data: - get: - description: |+ - Retrieve variant data objects whose linked data matches all supplied conditions. - - Note: A variant data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked expression objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant data objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: "Unique identifier (accession) of Reference Genome object." - in: query - name: referenceGenomeId - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/streamed-data: - get: - description: |+ - Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute. - - ## Conditions - It is possible to supply conditions for Samples (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedVariantDataAsCurator - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: Accession of the variant group object (VCF) - in: query - name: groupAccession - required: true - schema: - type: string - responses: - "200": - content: - text/tab-separated-values: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Variant data. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Stream data from a given VCF file - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/cells/analytics/cell-ratio: - post: - operationId: cellRatioAsCurator - summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data." - tags: - - "[BETA] Analytics omics queries as Curator" - description: |+ - This endpoint calculates cell ratio statistics based on single-cell metadata. - - It allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster) - relative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata. - - `countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters. - In case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter. - - The endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/CRRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CRResponse" - description: Cell ratio result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/omics/cells/analytics/differential-expression: - post: - operationId: differentialExpressionAsCurator - summary: "[BETA] Perform differential gene expression analytics between case and control cell groups" - tags: - - "[BETA] Analytics omics queries as Curator" - # The descriptions below are also duplicated in the schema description, make sure to keep them in sync. - description: |+ - This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data. - - Consult `/omics` search endpoints to find description of parameters within the cell groups. - The response includes per-gene metrics that characterize expression differences between the two groups: - - `Gene name` - gene identifier. - - `Case cell count` - number of cells expressing the gene in the case group. - - `Control cell count` - number of cells expressing the gene in the control group. - - `Average expression (case)` - mean expression level across case cells. - - `Average expression (control)` - mean expression level across control cells. - - `Expression difference` - numerical difference between average expressions. - - `Fold change` - ratio of average expressions between case and control groups. - - `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups. - - `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - - Results are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DERequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DEResponse" - description: Differential expression result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/omics/cells/analytics/gene-summary: - post: - operationId: geneSummaryAsCurator - summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data." - tags: - - "[BETA] Analytics omics queries as Curator" - description: |+ - This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets. - It aggregates and summarizes expression data for each gene to help assess variability, distribution, - and intensity of expression within the population of cells. - - The computed metrics include: - - `Gene name` - gene identifier. - - `Cell count` - number of cells with measurable expression for each gene. - - `Mean expression value` - - `Median expression value` - - `Quantiles` - configurable expression percentiles. - - `Histogram (density)` - binned distribution of expression levels for visualization. - - `Standard deviation` - dispersion of expression values. - - `Minimum and maximum values` - range of expression across cells. - - Results are sorted by gene name. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/GSRequest" - responses: - "200": - description: Gene summary result - content: - application/json: - schema: - $ref: "#/components/schemas/GSResponse" - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |+ - User is not authenticated. Please supply a valid Access Token in the `Authorization` - HTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token` - header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: |+ - An internal server error occurred. This indicates an unexpected - failure in the Genestack system, please file a bug report to support@genestack.com, - including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/integration/studies/{id}/tasks/publish-versions: - post: - description: This endpoint publishes information from drafts and creates new - metadata versions for the specified study and all associated objects. The - version name is set to “Auto-published by API call”. Only curators with access - to the specified studies can use this method. - operationId: publishStudyByAccessionAsCurator - parameters: - - description: Supply the accession of the study to be published - in: path - name: id - required: true - schema: - type: string - - description: Supply text to name this version. If not supplied the version - name is set to “Auto-published by API call” - in: query - name: versionMessage - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Forbidden - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Asynchronous task that publishes all pending versions for a single - study. - tags: - - Metadata versioning as Curator - /api/v1/as-curator/integration/studies/{id}/validation-summary: - get: - operationId: getStudyValidationSummary - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/StudyValidationSummary" - description: Study validation result. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve validation summary by querying study ID (accession) - tags: - - Validation summary as Curator - /api/v1/as-curator/integration/link/files/by/study/{id}: - get: - operationId: getFilesByStudyAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by study ID - tags: - - Files integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}: - post: - description: |- - Create links between cells and samples. - - Cell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study. - operationId: createCellGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to samples. - "204": - content: { } - description: Cell objects have been fully linked to samples. - "400": - content: { } - description: Sample group, cell group or samples to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and samples - tags: - - Cell integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}: - post: - description: |- - Create links between cells and libraries. - - Cell objects of the same group can be linked to library objects from multiple library groups, but only within the same study. - operationId: createCellGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to libraries. - "204": - content: { } - description: Cell objects have been fully linked to libraries. - "400": - content: { } - description: Sample group, cell group or libraries to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and libraries - tags: - - Cell integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}: - post: - description: |- - Create links between cells and preparations. - - Cell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study. - operationId: createCellGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to preparations. - "204": - content: { } - description: Cell objects have been fully linked to preparations. - "400": - content: { } - description: Sample group, cell group or preparations to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and preparations - tags: - - Cell integration as Curator -components: - schemas: - AttributeInvalidValue: - $ref: "./schemas/integration/AttributeInvalidValue.yaml" - AttributeValidationSummary: - $ref: "./schemas/integration/AttributeValidationSummary.yaml" - BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" - DataItem: - $ref: "./schemas/integration/DataItem.yaml" - DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" - GroupValidationSummary: - $ref: "./schemas/integration/GroupValidationSummary.yaml" - IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - Link: - $ref: "./schemas/integration/Link.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" - OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" - OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - Relationships: - $ref: "./schemas/integration/Relationships.yaml" - SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" - StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - StudyValidationSummary: - $ref: "./schemas/integration/StudyValidationSummary.yaml" - TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" - ValidationError: - $ref: "./schemas/integration/ValidationError.yaml" - SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" - AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" - PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" - FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" - ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" - MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" - FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" - FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" - AFile: - $ref: "./schemas/afile/AFile.yaml" - DERequest: - $ref: "./schemas/cell/DERequest.yaml" - DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" - GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" - GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" - CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" - CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/integrationUser.yaml b/openapi/v1/integrationUser.yaml deleted file mode 100644 index 0ea9ca11..00000000 --- a/openapi/v1/integrationUser.yaml +++ /dev/null @@ -1,5768 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the integrationUser APIs for ODM. These are typically used to find and retrieve study, sample and processed (signal) data and metadata for a given query. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM Integration API - version: default-released -tags: -- name: Expression integration as User -- name: Files integration as User -- name: Flow Cytometry (FACS) integration as User -- name: Library integration as User -- name: Linkage as User -- name: Omics queries as User -- name: Preparation integration as User -- name: Sample integration as User -- name: Study integration as User -- name: Variant integration as User -paths: - /api/v1/as-user/data-types: - get: - description: This endpoint is for instructional uses and can be used to get - the latest list of Data Types. - operationId: getDataTypesAsUser - responses: - "200": - content: - application/json: - schema: - items: - type: string - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Lists all available data types. - tags: - - Linkage as User - /api/v1/as-user/data-types/links: - get: - description: "This endpoint should be used for instructional needs, and can\ - \ be used in order to get the links between the Data Types." - operationId: getDataTypesLinksAsUser - parameters: - - description: Return only links with the specified data type. - in: query - name: type - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/SourceTypePair" - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List all possible links between data types that match the specified - criteria. - tags: - - Linkage as User - /api/v1/as-user/integration/link/expression/by/library/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByLibraryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related library ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/by/preparation/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByPreparationAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related preparation - ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related sample ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getExpressionGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToLibraryPairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToPreparationPairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ - \ unique runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry run-level data by querying related sample ID - (accession) - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getFlowCytometryGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/libraries/by/samples: - get: - description: |+ - Retrieve library metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibrariesBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related samples - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/by/sample/{id}: - get: - operationId: getLibraryBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related sample ID (accession) - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/group/by/study/{id}: - get: - operationId: getLibraryGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibraryLinksToSamplesAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve library-samples pairs by group id. Pagination is based on\ - \ unique libraries, not unique pairs." - tags: - - Library integration as User - /api/v1/as-user/integration/link/preparation/by/sample/{id}: - get: - operationId: getPreparationBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related sample ID (accession) - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparation/group/by/study/{id}: - get: - operationId: getPreparationGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationLinksToSamplesAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ preparations, not unique pairs." - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparations/by/samples: - get: - description: |+ - Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationsBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related samples - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/samples/by/libraries: - get: - description: |+ - Retrieve sample metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related libraries - tags: - - Sample integration as User - /api/v1/as-user/integration/link/samples/by/preparations: - get: - description: |+ - Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related preparations - tags: - - Sample integration as User - /api/v1/as-user/integration/link/samples/by/study/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related study ID (accession) - tags: - - Sample integration as User - /api/v1/as-user/integration/link/studies/by/libraries: - get: - description: |+ - Retrieve study metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related libraries - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/preparations: - get: - description: |+ - Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related preparations - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/samples: - get: - description: |+ - Retrieve study metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by sample metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all sample metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related samples - tags: - - Study integration as User - /api/v1/as-user/integration/link/study/by/sample/{id}: - get: - operationId: getStudyBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying sample ID (accession) - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/files: - get: - description: |+ - Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Attachment files (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByFilesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by attachment file metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all attached files metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related attachment files - tags: - - Study integration as User - /api/v1/as-user/integration/link/study/by/file/{id}: - get: - operationId: getStudyByFileAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying attachment file ID (accession) - tags: - - Study integration as User - /api/v1/as-user/integration/fulltext/search/studies: - post: - description: |- - Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned. - - The endpoint returns: - - a list of studies with their metadata summary; - - a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via "Configure facets" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted. - - Filter attributes for fulltext search: - - `"type": "FULL_TEXT"` - - `"match"` - - `"mode"` - - For details on two latter ones, see the request body model. Only one filter with `"type=": "FULL_TEXT"` can be passed in the request body. - - To filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed. - - It is possible to call the endpoint without any filters, then all the studies available to the user are returned. - operationId: searchStudiesByFilterAsUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SearchStudyRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FindObjectsResponse" - description: The request was successful. Retrieved studies and filters. - "400": - content: {} - description: Invalid request body - "401": - content: {} - description: User is not authenticated. Please supply a valid Genestack - API token in the `Genestack-API-Token` HTTP header (this token may be - obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - summary: Find and retrieve studies by full-text or facet query - tags: - - Study integration as User - x-codegen-request-body-name: request - /api/v1/as-user/integration/link/variant/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant run-level data by querying related sample ID (accession) - tags: - - Variant integration as User - /api/v1/as-user/integration/link/variant/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getVariantGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Variant integration as User - /api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Variant integration as User - /api/v1/as-user/links: - get: - description: Please make sure that this endpoint should be used only for getting - all links to a specific object. In case you specify both firstId and secondId - an expected answer would be true for existing links and false for no link - between the objects. - operationId: getLinksByParamsAsUser - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - - description: Param says to skip that many links before beginning to return - links. - in: query - name: offset - schema: - default: 0 - format: int32 - type: integer - - description: Param says to limit the count of returned links. - in: query - name: limit - schema: - default: 1000 - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Finds existing links matching the specified criteria. - tags: - - Linkage as User - /api/v1/as-user/links/get-batch: - post: - description: Please make sure to use that endpoint for batch calls only. You - are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same - time. Please always specify firstType. - operationId: getLinksByIdsAsUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/BatchOfIds" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Finds existing links by passing many IDs. \nPagination goes through\ - \ all links matched the criteria." - tags: - - Linkage as User - x-codegen-request-body-name: request - /api/v1/as-user/omics/cells: - get: - description: |- - Retrieve cell objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsAsUser - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: | - Filter by library metadata (key-value metadata pair(s)). E.g. `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: | - Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: | - Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: | - Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to cell expression data and originally\ - \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the cell - \ measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`.\n - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve Cell objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/cells/expression/data: - get: - description: |- - Retrieve cell expression objects by searching across multiple metadata types. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsExpressionDataAsUser - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cell expression objects by searching across multiple metadata types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/data: - get: - description: "Retrieve any data objects whose linked data matches all supplied\ - \ conditions.This endpoint does not support search by expression linked to Cell\ - \ group. Use /omics/cells/expression/data endpoint for search by Cell expression.\ - \n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ - It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ - \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ - 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ - \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ - \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ - \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ - \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ - \ backslash characters in the query need to be escaped with a backslash (`\\\ - `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ - \ an operator. The `=` operator matches literal values/string. The `!=` operator\ - \ matches anything except the literal value/string. The `<` or `>` operators\ - \ match numerical results that are less or greater than the supplied value.\ - \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ - \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ - \ The set of valid keys depends on the specific query type, and is documented\ - \ in the query parameter summary. The values can be simple non-whitespace\ - \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ - \ the value may be be a comma-delimited list of string values. Others require\ - \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter\ - \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ - \ to separate out the terms and operators. Parentheses `( )` can be used for\ - \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ - \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ - \ of an omics data file are associated via their CHAIN_ID metadata value.\ - \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ - \ version number or specific omics data file accessions to include them in\ - \ the query. If nothing is supplied to the useVersions parameter then only\ - \ the active version (which is usually the last one imported) is queried.\ - \ This acts as a filter before the rest of the query is carried out.\n\nExample\ - \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ - useVersions=v2 (query the second version. If there is no second version then\ - \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ - \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ - \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ - \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ - \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ - \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ - \ reasons this endpoint returns results in \"pages\" of limited size together\ - \ with a `cursor` tag. To retrieve the next page of results please supply\ - \ this `cursor` tag to resume the query from your previous result and get\ - \ the next page. To return all results iterate through pages using cursor \ - \ values until the `resultsExhausted` response field is true.\n\n" - operationId: omicsSearchExpressionDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve data objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchExpressionGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/streamed-data: - get: - description: "Stream data from a given group for a tabular file that matches\ - \ a sample/library/preparations query/filter. If no query/filters are supplied\ - \ all expression data is returned. If a metadata filter is specified, this\ - \ endpoint will only return expression data that is associated with a sample\ - \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ - \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ - \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ - \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ - \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ - \ that include whitespace. Speech marks and backslash characters in the query\ - \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ - \ filters are key-value pairs joined by an operator. The `=` operator matches\ - \ literal values/string. The `!=` operator matches anything except the literal\ - \ value/string. The `<` or `>` operators match numerical results that are\ - \ less or greater than the supplied value. Strings containing whitespace need\ - \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ - \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ - \ using white-space to separate out the terms and operators. Parentheses `(\ - \ )` can be used for complex expressions.\n \n\n## Error Handling\n In case\ - \ of unexpected internal error during data retrieval, the last line of the\ - \ body will contain an error message, prefixed by the `#` character \n\n" - operationId: omicsSearchStreamedExpressionDataAsUser - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g.`"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Deprecated; use `exQuery` parameter instead. Filters results\ - \ by the feature column (e.g., Gene ID). The feature parameter value must\ - \ match the name of the identifier in the GCT file (under the NAME column).\ - \ Example: `ENSG00000077044`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: Accession of the expression group object (GCT) - in: query - name: groupAccession - required: true - schema: - type: string - - description: The number of digits after the decimal point for floating-point - values. The final value is rounded up. Must be non-negative. The default - is 4. - in: query - name: roundDigits - schema: - default: 4 - format: int32 - type: integer - responses: - "200": - content: - text/csv: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Expression data. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Stream data from a given tabular file - tags: - - Omics queries as User - /api/v1/as-user/omics/flow-cytometry/data: - get: - description: |+ - Retrieve flow cytometry data objects whose linked data matches all supplied conditions. - - Note: A flow cytometry data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry data objects by searching across multiple data - types - tags: - - Omics queries as User - /api/v1/as-user/omics/flow-cytometry/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/samples: - get: - description: |+ - Retrieve sample metadata objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchSamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata objects by searching across multiple data - types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/data: - get: - description: |+ - Retrieve variant data objects whose linked data matches all supplied conditions. - - Note: A variant data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked expression objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant data objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: "Unique identifier (accession) of Reference Genome object." - in: query - name: referenceGenomeId - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/streamed-data: - get: - description: |+ - Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute. - - ## Conditions - It is possible to supply conditions for Samples (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedVariantDataAsUser - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: Accession of the variant group object (VCF) - in: query - name: groupAccession - required: true - schema: - type: string - responses: - "200": - content: - text/tab-separated-values: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Variant data. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Stream data from a given VCF file - tags: - - Omics queries as User - /api/v1/as-user/omics/cells/analytics/cell-ratio: - post: - operationId: cellRatioAsUser - summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data." - tags: - - "[BETA] Analytics omics queries as User" - description: |+ - This endpoint calculates cell ratio statistics based on single-cell metadata. - - It allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster) - relative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata. - - `countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters. - In case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter. - - The endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/CRRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CRResponse" - description: Cell ratio result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/omics/cells/analytics/differential-expression: - post: - operationId: differentialExpressionAsUser - summary: "[BETA] Perform differential gene expression analytics between case and control cell groups" - tags: - - "[BETA] Analytics omics queries as User" - # The descriptions below are also duplicated in the schema description, make sure to keep them in sync. - description: |+ - This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data. - - Consult `/omics` search endpoints to find description of parameters within the cell groups. - The response includes per-gene metrics that characterize expression differences between the two groups: - - `Gene name` - gene identifier. - - `Case cell count` - number of cells expressing the gene in the case group. - - `Control cell count` - number of cells expressing the gene in the control group. - - `Average expression (case)` - mean expression level across case cells. - - `Average expression (control)` - mean expression level across control cells. - - `Expression difference` - numerical difference between average expressions. - - `Fold change` - ratio of average expressions between case and control groups. - - `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups. - - `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - - Results are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DERequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DEResponse" - description: Differential expression result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/omics/cells/analytics/gene-summary: - post: - operationId: geneSummaryAsUser - summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data." - tags: - - "[BETA] Analytics omics queries as User" - description: |+ - This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets. - It aggregates and summarizes expression data for each gene to help assess variability, distribution, - and intensity of expression within the population of cells. - - The computed metrics include: - - `Gene name` - gene identifier. - - `Cell count` - number of cells with measurable expression for each gene. - - `Mean expression value` - - `Median expression value` - - `Quantiles` - configurable expression percentiles. - - `Histogram (density)` - binned distribution of expression levels for visualization. - - `Standard deviation` - dispersion of expression values. - - `Minimum and maximum values` - range of expression across cells. - - Results are sorted by gene name. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/GSRequest" - responses: - "200": - description: Gene summary result - content: - application/json: - schema: - $ref: "#/components/schemas/GSResponse" - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |+ - User is not authenticated. Please supply a valid Access Token in the `Authorization` - HTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token` - header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: |+ - An internal server error occurred. This indicates an unexpected - failure in the Genestack system, please file a bug report to support@genestack.com, - including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/integration/link/files/by/study/{id}: - get: - operationId: getFilesByStudyAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by study ID - tags: - - Files integration as User -components: - schemas: - BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" - DataItem: - $ref: "./schemas/integration/DataItem.yaml" - DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" - IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" - OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" - OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - Relationships: - $ref: "./schemas/integration/Relationships.yaml" - SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" - StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" - AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" - PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" - FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" - ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" - StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" - FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" - FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" - AFile: - $ref: "./schemas/afile/AFile.yaml" - DERequest: - $ref: "./schemas/cell/DERequest.yaml" - DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" - GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" - GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" - CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" - CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/job.yaml b/openapi/v1/job.yaml deleted file mode 100644 index ab6538e3..00000000 --- a/openapi/v1/job.yaml +++ /dev/null @@ -1,863 +0,0 @@ -openapi: 3.1.0 -info: - description: | - - These API endpoints serve to start, control, monitor and retrieve results for a set of available Genestack jobs. - - A job is an arbitrary process that, once started, runs asynchronously in the background. - Upon starting a job the user receives a job execution identifier (`jobExecId`) that they can use to control and monitor the job and to retrieve the job result (output). - - #### Basic workflow: - - Start a job (POST endpoints) to return a `jobExecId` - Periodically poll the `GET /{jobExecId}/output` endpoint to get the job status for a given `jobExecId` - When the status is `COMPLETED` or `FAILED`, queries to the `GET /{jobExecId}/output` endpoint will also contain any output (result/errors) - - To retrieve more information about a job, such as start time etc., use the `GET /{jobExecId}/info` endpoint. - - #### Available statuses: - - - `STARTING`: initial job status - - `RUNNING`: the job has successfully started and is running - - `COMPLETED` (terminal): the job has completed and the result is available in the `GET /{jobExecId}/output` response - - `FAILED` (terminal): the job has failed, you can extract errors from the `GET /{jobExecId}/output` response - - `STOPPING`: a stop request has been initiated, the job is in the process of stopping - - `STOPPED` (terminal): the job has been stopped (it may be able to be restarted) - - `ABANDONED` (terminal): the job has been abandoned for an unknown reason, please contact your system administrator. - - `UNKNOWN`: the job status is unknown, please contact your system administrator. - title: Job API - version: default-released -tags: -- name: Data import jobs -- name: Data import via direct file upload -- name: Job operations -paths: - /api/v1/jobs/import/study: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportStudy - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import study metadata from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/samples: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportSamples - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of sample metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/samples/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportSamplesMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of sample metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/libraries: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportLibraries - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of library metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/libraries/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportLibrariesMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of library metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/preparations: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportPreparations - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of preparation metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/preparations/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportPreparationsMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of preparation metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/cells: - post: - description: |2 - - The endpoint initiates a job to import cell data and creates a Cell Group to manage it. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - - Embedding constraints: - - * UMAP/t-SNE - - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**. - - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid. - - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored. - - * PCA - - Allowed number of components per cell: **0** (absent) or **≥ 2**. - - If exactly **1** PCA component is provided, the request is invalid. - - At most **100** PCA components are stored; components beyond 100 are ignored. - - Notes: - - “Dimensions/components” refer to the length of the embedding vector for each cell. - - Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**. - operationId: startImportCells - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportCellsRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of cell data objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/cells/multipart: - post: - description: |2 - - The endpoint initiates a job to import cell data and creates a Cell Group to manage it. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - - Embedding constraints: - - * UMAP/t-SNE - - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**. - - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid. - - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored. - - * PCA - - Allowed number of components per cell: **0** (absent) or **≥ 2**. - - If exactly **1** PCA component is provided, the request is invalid. - - At most **100** PCA components are stored; components beyond 100 are ignored. - - Notes: - - “Dimensions/components” refer to the length of the embedding vector for each cell. - - Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**. - operationId: startImportCellsMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportCellsFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of cell data objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/expression: - post: - description: |- - ## Data - This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data. - - ## Metadata - It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file. - ## Metadata file format - * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`) - * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed - * Header: the first line is treated as table header that contains attribute names - * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the "pipe" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice. - * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data. - operationId: startImportExpression - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportExpressionSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import any tabular data from TSV or GCT files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/expression/multipart: - post: - description: |- - ## Data - This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data. - - ## Metadata - It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file. - ## Metadata file format - * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`) - * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed - * Header: the first line is treated as table header that contains attribute names - * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the "pipe" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice. - * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data. - operationId: startImportExpressionMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import any tabular data from TSV or GCT files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/variant: - post: - description: "\nWhen job finishes successfully the following **result** object\ - \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ - groupAccession\": \"GSF1234567\"\n}\n```\n " - operationId: startImportVariant - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import variation data and metadata from VCF and TSV files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/variant/multipart: - post: - description: "\nWhen job finishes successfully the following **result** object\ - \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ - groupAccession\": \"GSF1234567\"\n}\n```\n " - operationId: startImportVariantMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import variation data and metadata from VCF and TSV files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/flow-cytometry: - post: - description: |- - This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format. - Consult the user guide for a comprehensive understanding of the file content requirements. - For flow cytometry data in FCS format use expression endpoint. - - When job finishes successfully the following **result** object - can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportFlowCytometry - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import flow-cytometry data and metadata from FACS and TSV files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/flow-cytometry/multipart: - post: - description: |- - This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format. - Consult the user guide for a comprehensive understanding of the file content requirements. - For flow cytometry data in FCS format use expression endpoint. - - When job finishes successfully the following **result** object - can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportFlowCytometryMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/file: - post: - description: |- - In order to import a file as an attachment to a study, please fill in the following fields: - - * `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link. - * `dataLink` - a link to a file to import as an attachment. - The file will be associated with a study and will be searchable by its name and metadata. - * `metadataLink` - an optional URL of a metadata file to be used as the original metadata - for the created objects. The file must contain a single record describing the uploaded attachment. - * `studyAccession` - an accession of a study the file will be associated with. - * `dataClass` - file data class with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics', - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "accession": "GSF1234567" - } - ``` - operationId: startImportAFile - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportAFileRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import file as an attachment - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/file/multipart: - post: - description: |- - In order to import a file as an attachment to a study, please fill in the following fields: - - * `data` - a file to import as an attachment. - The file will be associated with a study and will be searchable by its name and metadata. - * `metadata` - an optional metadata file to be used as the original metadata - for the created objects. The file must contain a single record describing the uploaded attachment. - * `studyAccession` - an accession of a study the file will be associated with. - * `dataClass` - file data class with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics', - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "accession": "GSF1234567" - } - ``` - operationId: startImportAFileMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportAFileFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import file as an attachment via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/{jobExecId}/info: - get: - operationId: info - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: get information about one particular job execution - tags: - - Job operations - /api/v1/jobs/{jobExecId}/output: - get: - operationId: output - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Output" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: retrieve job output (result) - tags: - - Job operations - /api/v1/jobs/{jobExecId}/restart: - put: - operationId: restart - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: restart stopped (failed) job - tags: - - Job operations - /api/v1/jobs/{jobExecId}/stop: - put: - operationId: stop - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: stop running job - tags: - - Job operations -components: - parameters: - AllowDuplicates: - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to load\ - \ this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - schemas: - ExceptionTypeAndMessage: - $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" - ImportCellsRequest: - $ref: "./schemas/job/ImportCellsRequest.yaml" - ImportCellsFromMultipartRequest: - $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" - ImportMetadataRequest: - $ref: "./schemas/job/ImportMetadataRequest.yaml" - ImportMetadataFromMultipartRequest: - $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" - ImportSignalRunRequest: - $ref: "./schemas/job/ImportSignalRunRequest.yaml" - ImportSignalRunFomMultipartRequest: - $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" - ImportExpressionSignalRunRequest: - $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" - ImportExpressionSignalRunFromMultipartRequest: - $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" - ImportAFileRequest: - $ref: "./schemas/job/ImportAFileRequest.yaml" - ImportAFileFromMultipartRequest: - $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" - Info: - $ref: "./schemas/job/Info.yaml" - JobRuntimeError: - $ref: "./schemas/job/JobRuntimeError.yaml" - Output: - $ref: "./schemas/job/Output.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/libraryCurator.yaml b/openapi/v1/libraryCurator.yaml deleted file mode 100644 index 832d2ccd..00000000 --- a/openapi/v1/libraryCurator.yaml +++ /dev/null @@ -1,470 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the libraryCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Library SPoT as Curator -paths: - /api/v1/as-curator/libraries: - get: - description: |- - Retrieve library metadata objects by searching/listing library metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for library metadata objects - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/by/group/{id}: - get: - operationId: getLibrariesByGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve libraries related to the given group - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/{id}: - get: - operationId: getLibraryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateLibraryAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a library object - tags: - - Library SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/libraries/{id}/versions: - get: - operationId: getLibraryVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/{id}/versions/{version}: - get: - operationId: getLibraryByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/libraryUser.yaml b/openapi/v1/libraryUser.yaml deleted file mode 100644 index d5ed6482..00000000 --- a/openapi/v1/libraryUser.yaml +++ /dev/null @@ -1,413 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the libraryUser API endpoints for ODM. These are typically used to find and retrieve library metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Library SPoT as User -paths: - /api/v1/as-user/libraries: - get: - description: |- - Retrieve library metadata objects by searching/listing library metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for library metadata objects - tags: - - Library SPoT as User - /api/v1/as-user/libraries/by/group/{id}: - get: - operationId: getLibrariesByGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve libraries related to the given group - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}: - get: - operationId: getLibraryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}/versions: - get: - operationId: getLibraryVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}/versions/{version}: - get: - operationId: getLibraryByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/manageData.yaml b/openapi/v1/manageData.yaml deleted file mode 100644 index cc77f834..00000000 --- a/openapi/v1/manageData.yaml +++ /dev/null @@ -1,189 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the manageData APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Manage Data -paths: - /api/v1/manage-data/detached-objects: - get: - description: |+ - Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'. - Study is considered as detached object itself in case there are no links to objects at a lower level. - Data with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter. - The detached objects are sorted according to their `detachedObjectType` and `genestack:accession`. - Specific ordering can be observed in the list of supported detached types found below. - Pagination of the results can be conveniently managed using the `cursor` and `limit` parameters. - Supported types of detached objects (listed in the order of retrieval) include: - * `STUDY` - * `SAMPLE_GROUP` - * `LIBRARY_GROUP` - * `PREPARATION_GROUP` - * `CELL_GROUP` - * `TABULAR_DATA` - * `GENE_VARIANT` - * `FLOW_CYTOMETRY` - - operationId: getDetachedObjects - parameters: - - description: Filter by detached object type. Multiple values can be used to - filter the data. - explode: true - in: query - name: detachedObjectType - schema: - items: - type: string - type: array - style: form - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: limit - schema: - format: int32 - type: integer - - description: |- - This parameter enables retrieval of objects starting from a specific point. - Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DetachedCollection" - description: Retrieved detached data. - "400": - content: {} - description: Detached data cannot be retrieved due to Bad Request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to call method. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of detached objects - tags: - - Manage Data - /api/v1/manage-data/data: - delete: - description: |- - The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint: - * `STUDY` - * `SAMPLE_GROUP` - * `SAMPLE_OBJECT` - * `LIBRARY_GROUP` - * `PREPARATION_GROUP` - * `CELL_GROUP` - * `TABULAR_DATA` - * `GENE_VARIANT` - * `FLOW_CYTOMETRY` - * `REFERENCE_GENOME` - * `FILE` - - Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules: - * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed. - * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group. - * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well. - * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`. - * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group). - * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM. - * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups. - * If you delete `FILE`, the file will be removed from ODM. - operationId: deleteData - parameters: - - description: Accessions files to be deleted. - explode: false - in: query - name: accessions - schema: - items: - type: string - type: array - style: form - responses: - "202": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/ManagedObject" - type: array - description: The deletion of the following files and all linked data has - started. - "400": - content: {} - description: Deletion could not be performed due to Bad Request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to call method or the file is not meant to be deleted. - "404": - content: {} - description: Some of the provided accessions could not be found in ODM. - Deletion will not be preformed. Please review your list and repeat the - attempt. - "406": - content: {} - description: Some of the provided accessions do not belong to the supported - object types. Deletion will not be performed. Please review your list - and repeat the attempt. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete objects from ODM - tags: - - Manage Data -components: - schemas: - DetachedCollection: - $ref: "./schemas/manage-data/DetachedCollection.yaml" - DetachedObject: - $ref: "./schemas/manage-data/DetachedObject.yaml" - ManagedObject: - $ref: "./schemas/manage-data/ManagedObject.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml new file mode 100644 index 00000000..24fb56fe --- /dev/null +++ b/openapi/v1/odm.yaml @@ -0,0 +1,24101 @@ +--- +openapi: "3.1.0" +info: + description: "This swagger page describes the variantUser API endpoints for ODM.\ + \ These are typically used to find and retrieve variant data and metadata.\n\n\ + Before carrying out any API calls you will need an API token. API tokens can be\ + \ obtained under your profile within the Genestack software.\n\nTo try out calls\ + \ in this swagger page:\n\n1. Click the 'Authorize' button below to enter your\ + \ API token\n2. Scroll to the 'Parameters' section for the method you wish to\ + \ try out and click the 'Try it out' button\n3. Enter parameter values that you\ + \ wish to try\n4. Scroll to the bottom of the Parameters section and click the\ + \ 'Execute' bar that appears\n\n\n The server response will be in the section\ + \ that follows." + title: "ODM API" + version: "default-released" +tags: +- name: "Cells as Curator" +- name: "Cells as User" +- name: "Expression SPoT as Curator" +- name: "Expression SPoT as User" +- name: "Files as Curator" +- name: "Files as User" +- name: "Flow Cytometry SPoT as Curator" +- name: "Flow Cytometry SPoT as User" +- name: "Cell integration as Curator" +- name: "Expression integration as Curator" +- name: "Files integration as Curator" +- name: "Flow Cytometry (FACS) integration as Curator" +- name: "Library integration as Curator" +- name: "Linkage as Curator" +- name: "Metadata versioning as Curator" +- name: "Omics queries as Curator" +- name: "Preparation integration as Curator" +- name: "Sample integration as Curator" +- name: "Study integration as Curator" +- name: "Validation summary as Curator" +- name: "Variant integration as Curator" +- name: "Expression integration as User" +- name: "Files integration as User" +- name: "Flow Cytometry (FACS) integration as User" +- name: "Library integration as User" +- name: "Linkage as User" +- name: "Omics queries as User" +- name: "Preparation integration as User" +- name: "Sample integration as User" +- name: "Study integration as User" +- name: "Variant integration as User" +- name: "Data import jobs" +- name: "Data import via direct file upload" +- name: "Job operations" +- name: "Library SPoT as Curator" +- name: "Library SPoT as User" +- name: "Manage Data" +- name: "Preparation SPoT as Curator" +- name: "Preparation SPoT as User" +- name: "Xrefset queries" +- name: "Reference genome" +- name: "Sample SPoT as Curator" +- name: "Sample SPoT as User" +- name: "Groups" +- name: "Users" +- name: "Study SPoT as Curator" +- name: "Study SPoT as User" +- name: "Tasks API" +- name: "Variant SPoT as Curator" +- name: "Variant SPoT as User" +paths: + /api/v1/as-curator/cells/{id}: + get: + operationId: "getCellByIdAsCurator" + parameters: + - description: "Unique cell identifier. Consists of a cell group accession and\ + \ a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Cell" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided ID could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a cell by ID" + tags: + - "Cells as Curator" + /api/v1/as-curator/cells/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve\ + \ the next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page.\nIf there are no more results\ + \ you will just retrieve an empty result.\n" + operationId: "getCellsByGroupAsCurator" + parameters: + - description: "Unique identifier (accession) of the cell group." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 10000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see Paging above). Cell\ + \ ID is currently used as a cursor." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CellListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Cell data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cells from a given group" + tags: + - "Cells as Curator" + /api/v1/as-user/cells/{id}: + get: + operationId: "getCellByIdAsUser" + parameters: + - description: "Unique cell identifier. Consists of a cell group accession and\ + \ a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Cell" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided ID could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a cell by ID" + tags: + - "Cells as User" + /api/v1/as-user/cells/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve\ + \ the next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page.\nIf there are no more results\ + \ you will just retrieve an empty result.\n" + operationId: "getCellsByGroupAsUser" + parameters: + - description: "Unique identifier (accession) of the cell group." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 10000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see Paging above). Cell\ + \ ID is currently used as a cursor." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CellListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Cell data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cells from a given group" + tags: + - "Cells as User" + /api/v1/as-curator/expressions: + get: + description: "Retrieve all expression data and metadata objects that match a\ + \ query.\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getExpressionDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that corresponds to the column and\ + \ is used to link data from the same run to a sample, library or preparation.\ + \ Multiple values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample, library\ + \ or preparation is related. Multiple values can be provided as a list to\ + \ retrieve data from multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minExpressionLevel" + schema: + format: "double" + type: "number" + - description: "List of features to return. These features must match exactly\ + \ the probe IDs in the GCT file. Example: `1552269_at`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionResponse" + description: "Retrieved Expression data." + "400": + content: {} + description: "Expression data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple expression data and metadata objects" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchExpressionGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group/by/run/{id}: + get: + operationId: "getExpressionGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group/{id}: + get: + operationId: "getExpressionGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression group by ID (groupId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchExpressionRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/{id}: + get: + operationId: "getExpressionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by ID (itemId)" + tags: + - "Expression SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateExpressionRunAsCurator" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update metadata object by expression object run ID (runId)" + tags: + - "Expression SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/expressions/{id}/versions: + get: + operationId: "getExpressionVersionsAsCurator" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of expression object versions by run ID (runId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/{id}/versions/{version}: + get: + operationId: "getExpressionByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the expression object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by run ID and its version" + tags: + - "Expression SPoT as Curator" + /api/v1/as-user/expressions: + get: + description: "Retrieve all expression data and metadata objects that match a\ + \ query.\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getExpressionDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that corresponds to the column and\ + \ is used to link data from the same run to a sample, library or preparation.\ + \ Multiple values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample, library\ + \ or preparation is related. Multiple values can be provided as a list to\ + \ retrieve data from multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minExpressionLevel" + schema: + format: "double" + type: "number" + - description: "List of features to return. These features must match exactly\ + \ the probe IDs in the GCT file. Example: `1552269_at`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionResponse" + description: "Retrieved Expression data." + "400": + content: {} + description: "Expression data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple expression data and metadata objects" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchExpressionGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group/by/run/{id}: + get: + operationId: "getExpressionGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group/{id}: + get: + operationId: "getExpressionGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression group by ID (groupId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchExpressionRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}: + get: + operationId: "getExpressionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by ID (itemId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}/versions: + get: + operationId: "getExpressionVersionsAsUser" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of expression object versions by run ID (runId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}/versions/{version}: + get: + operationId: "getExpressionByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by run ID and its version" + tags: + - "Expression SPoT as User" + /api/v1/as-curator/files/{id}/download: + head: + description: "Check if a file exists by its accession.\n\nThis endpoint can\ + \ be used to check if a file exists and accessible before downloading it.\n" + operationId: "headFileAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + description: "File exists. Additional metadata is provided in the response\ + \ headers." + "400": + content: {} + description: "File cannot be downloaded." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to" + security: + - Access-token: [] + - Genestack-API-Token: [] + tags: + - "Files as Curator" + get: + description: "Download a file by its accession.\n" + operationId: "getFileAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - name: "Range" + in: "header" + required: false + schema: + type: "string" + example: "bytes=0-" + description: "Request a specific range of bytes to support partial downloads.\n\ + Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several\n\ + ranges is not supported.\n" + responses: + "200": + description: "File downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "206": + description: "Partial content downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "400": + content: {} + description: "File cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a file by ID (accession)" + tags: + - "Files as Curator" + /api/v1/as-curator/files/{id}: + get: + operationId: "getFileMetadataByIdAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/AFile" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by ID (accession)" + tags: + - "Files as Curator" + /api/v1/as-curator/files: + get: + operationId: "getFilesMetadataAsCurator" + description: "## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the `pageOffset` query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages by increasing\ + \ the offset in multiples of limit (e.g., `offset = n * limit`), until all\ + \ results have been retrieved. The total number of pages can be calculated\ + \ by dividing the total number of results by the limit.\n\n## List operation\n\ + \nThis endpoint can be called without any query parameters. When called this\ + \ way, it returns a list of all files metadata objects." + parameters: + - in: "query" + name: "filter" + description: "Filter by files metadata (key-value metadata pair(s))." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for files via a full-text query over all file metadata." + schema: + type: "string" + - in: "query" + name: "includeContents" + description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + required: false + schema: + default: false + type: "boolean" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by its fields" + tags: + - "Files as Curator" + /api/v1/as-user/files/{id}/download: + head: + description: "Check if a file exists by its accession.\n\nThis endpoint can\ + \ be used to check if a file exists and accessible before downloading it.\n" + operationId: "headFileAsUser" + summary: "Check if a file exists by ID (accession)." + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + description: "File exists. Additional metadata is provided in the response\ + \ headers." + "400": + content: {} + description: "File cannot be downloaded." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to" + security: + - Access-token: [] + - Genestack-API-Token: [] + tags: + - "Files as User" + get: + description: "Download a file by its accession.\n" + operationId: "getFileAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - name: "Range" + in: "header" + required: false + schema: + type: "string" + example: "bytes=0-" + description: "Request a specific range of bytes to support partial downloads.\n\ + Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several\n\ + ranges is not supported.\n" + responses: + "200": + description: "File downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "206": + description: "Partial content downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "400": + content: {} + description: "File cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a file by ID (accession)" + tags: + - "Files as User" + /api/v1/as-user/files/{id}: + get: + operationId: "getFileMetadataByIdAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/AFile" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by ID (accession)" + tags: + - "Files as User" + /api/v1/as-user/files: + get: + operationId: "getFilesMetadataAsUser" + description: "## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the `pageOffset` query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages by increasing\ + \ the offset in multiples of limit (e.g., `offset = n * limit`), until all\ + \ results have been retrieved. The total number of pages can be calculated\ + \ by dividing the total number of results by the limit.\n\n## List operation\n\ + \nThis endpoint can be called without any query parameters. When called this\ + \ way, it returns a list of all files metadata objects." + parameters: + - in: "query" + name: "filter" + description: "Filter by files metadata (key-value metadata pair(s))." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for files via a full-text query over all file metadata." + schema: + type: "string" + - in: "query" + name: "includeContents" + description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + required: false + schema: + default: false + type: "boolean" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by its fields" + tags: + - "Files as User" + /api/v1/as-curator/flow-cytometries: + get: + description: "Retrieve all flow cytometry data and metadata objects that match\ + \ a query.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getFlowCytometryDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that identifies a set of rows related\ + \ to one run and is used to link data from the run to a sample. Multiple\ + \ values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Sample name from the file which allows retrieval of all the\ + \ rows related to the sample. Multiple values can be provided as a list." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" + in: "query" + name: "readoutType" + schema: + type: "string" + - description: "Value of \"Cell Population\" column. E.g.: `\"total cells\"\ + `, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special\ + \ characters like `/` which is used as a URI path separator, such characters\ + \ should be escaped manually before sending request. For example, `/` should\ + \ be escaped as `%2F`." + in: "query" + name: "population" + schema: + type: "string" + - description: "Marker value. E.g.: `PD1`, `BV786`" + in: "query" + name: "marker" + schema: + type: "string" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minValue" + schema: + type: "number" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryResponse" + description: "Retrieved Flow Cytometry data." + "400": + content: {} + description: "Flow Cytometry data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple flow cytometry data and metadata objects" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchFlowCytometryGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group/by/run/{id}: + get: + operationId: "getFlowCytometryGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group/{id}: + get: + operationId: "getFlowCytometryGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchFlowCytometryRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/{id}: + get: + operationId: "getFlowCytometryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateFlowCytometryAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update object metadata" + tags: + - "Flow Cytometry SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/flow-cytometries/{id}/versions: + get: + operationId: "getFlowCytometryVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/{id}/versions/{version}: + get: + operationId: "getFlowCytometryByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-user/flow-cytometries: + get: + description: "Retrieve all flow cytometry data and metadata objects that match\ + \ a query.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getFlowCytometryDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that identifies a set of rows related\ + \ to one run and is used to link data from the run to a sample. Multiple\ + \ values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Sample name from the file which allows retrieval of all the\ + \ rows related to the sample. Multiple values can be provided as a list." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" + in: "query" + name: "readoutType" + schema: + type: "string" + - description: "Value of \"Cell Population\" column. E.g.: `\"total cells\"\ + `, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special\ + \ characters like `/` which is used as a URI path separator, such characters\ + \ should be escaped manually before sending request. For example, `/` should\ + \ be escaped as `%2F`." + in: "query" + name: "population" + schema: + type: "string" + - description: "Marker value. E.g.: `PD1`, `BV786`" + in: "query" + name: "marker" + schema: + type: "string" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minValue" + schema: + type: "number" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryResponse" + description: "Retrieved Flow Cytometry data." + "400": + content: {} + description: "Flow Cytometry data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple flow cytometry data and metadata objects" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchFlowCytometryGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group/by/run/{id}: + get: + operationId: "getFlowCytometryGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group/{id}: + get: + operationId: "getFlowCytometryGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchFlowCytometryRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}: + get: + operationId: "getFlowCytometryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}/versions: + get: + operationId: "getFlowCytometryVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}/versions/{version}: + get: + operationId: "getFlowCytometryByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-curator/data-types: + get: + description: "This endpoint is for instructional uses and can be used to get\ + \ the latest list of Data Types." + operationId: "getDataTypesAsCurator" + responses: + "200": + content: + application/json: + schema: + items: + type: "string" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Lists all available data types." + tags: + - "Linkage as Curator" + /api/v1/as-curator/data-types/links: + get: + description: "This endpoint should be used for instructional needs, and can\ + \ be used in order to get the links between the Data Types." + operationId: "getDataTypesLinksAsCurator" + parameters: + - description: "Return only links with the specified data type." + in: "query" + name: "type" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/SourceTypePair" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List all possible links between data types that match the specified\ + \ criteria." + tags: + - "Linkage as Curator" + /api/v1/as-curator/integration/link/expression/by/library/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByLibraryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related library ID\ + \ (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/by/preparation/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByPreparation" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related preparation\ + \ ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related sample ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getExpressionGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}: + post: + description: "Create a link between a group of cell expression objects and a\ + \ group of cell metadata.\n\nA cell expression object can be linked to one\ + \ cell metadata object only." + operationId: "createExpressionGroupCellGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell expression group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the cell metadata group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) cell links were created." + "204": + content: {} + description: "All links were created." + "400": + content: {} + description: "Incorrect Cell or Expression group provided, see error message\ + \ for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of cell expression objects and a group\ + \ of cell metadata." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of library objects" + operationId: "deleteExpressionGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of library\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of library objects.\n\nAn expression object can be linked to one object\ + \ only. If an expression object is already linked to another object, this\ + \ link will be deleted and a new link with the specified object will be created.\n\ + Expression objects of the same group can only be linked to objects of the\ + \ same study." + operationId: "createExpressionGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) sample links created." + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Library group, signal group or libraries to link not found" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ library objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of preparation objects" + operationId: "deleteExpressionGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of preparation\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of preparation objects.\n\nAn expression object can be linked to one object\ + \ only. If an expression object is already linked to another object, this\ + \ link will be deleted and a new link with the specified object will be created.\n\ + Expression objects of the same group can only be linked to objects of the\ + \ same study." + operationId: "createExpressionGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) sample links created." + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Preparation group, signal group or preparations to link not\ + \ found" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ preparation objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of sample objects" + operationId: "deleteExpressionGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of sample\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of sample objects.\n\nAn expression object can be linked to one object only.\ + \ If an expression object is already linked to another object, this link will\ + \ be deleted and a new link with the specified object will be created.\nExpression\ + \ objects of the same group can only be linked to objects of the same study.\n\ + \n Users can specify a custom metadata field for linking omics data to samples\ + \ via the “linkingAttribute” parameter, if not specified the “Sample Source\ + \ ID“ sample metadata attribute will be used by default." + operationId: "createExpressionGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "400": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ sample objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToLibraryPairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToPreparationPairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ + \ unique runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}: + delete: + description: "Delete link between an expression object and a library" + operationId: "deleteExpressionLibraryLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a library" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a library.\n\n\ + An expression object can be linked to one object only. If an expression object\ + \ is already linked to another object, this link will be deleted and a new\ + \ link with the specified object will be created.\nExpression objects of the\ + \ same group can only be linked to objects of the same study." + operationId: "createExpressionLibraryLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a library" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}: + delete: + description: "Delete link between an expression object and a preparation" + operationId: "deleteExpressionPreparationLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a preparation" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a preparation.\n\ + \nAn expression object can be linked to one object only. If an expression\ + \ object is already linked to another object, this link will be deleted and\ + \ a new link with the specified object will be created.\nExpression objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createExpressionPreparationLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a preparation" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between an expression object and a sample" + operationId: "deleteExpressionSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a sample" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a sample.\n\nAn\ + \ expression object can be linked to one object only. If an expression object\ + \ is already linked to another object, this link will be deleted and a new\ + \ link with the specified object will be created.\nExpression objects of the\ + \ same group can only be linked to objects of the same study." + operationId: "createExpressionSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a sample" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getFlowCytometryBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry run-level data by querying related sample\ + \ ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getFlowCytometryGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of flow-cytometry objects and a group\ + \ of sample objects" + operationId: "deleteFlowCytometryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a FACS file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of flow-cytometry objects and a group\ + \ of sample objects" + tags: + - "Flow Cytometry (FACS) integration as Curator" + post: + description: "Create a link between a group of flow-cytometry objects and a\ + \ group of sample objects.\n\nA flow-cytometry object can be linked to one\ + \ object only. If a flow-cytometry object is already linked to another object,\ + \ this link will be deleted and a new link with the specified object will\ + \ be created.\nFlow-cytometry objects of the same group can only be linked\ + \ to objects of the same study.\n\nUsers can specify a custom metadata field\ + \ for linking omics data to samples via the “linkingAttribute” parameter,\ + \ if not specified the “Sample Source ID“ sample metadata attribute will be\ + \ used by default." + operationId: "createFlowCytometryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a FACS file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of flow-cytometry objects and a group\ + \ of sample objects" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getFlowCytometryRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between a flow-cytometry object and a sample" + operationId: "deleteFlowCytometrySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level data block" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a flow-cytometry object and a sample" + tags: + - "Flow Cytometry (FACS) integration as Curator" + post: + description: "Create a link between a flow-cytometry object and a sample.\n\n\ + A flow-cytometry object can be linked to one object only. If a flow-cytometry\ + \ object is already linked to another object, this link will be deleted and\ + \ a new link with the specified object will be created.\nFlow-cytometry objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createFlowCytometrySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level data block" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a flow-cytometry object and a sample" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/libraries/by/samples: + get: + description: "Retrieve library metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibrariesBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related samples" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/by/sample/{id}: + get: + operationId: "getLibraryBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related sample ID (accession)" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/group/by/study/{id}: + get: + operationId: "getLibraryGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete links between samples and libraries related to the specified\ + \ group" + operationId: "deleteLibraryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the library group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete links between samples and libraries related to the specified\ + \ group" + tags: + - "Library integration as Curator" + post: + description: "Create links between samples and libraries.\n\nLibrary objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createLibraryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the library group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between samples and libraries" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibraryLinksToSamplesAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library-samples pairs by group id. Pagination is based on\ + \ unique libraries, not unique pairs." + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete a link between a library and a sample" + operationId: "deleteLibrarySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the library object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a link between a library and a sample" + tags: + - "Library integration as Curator" + post: + description: "Create a link between a library and a sample.\n\nLibrary objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createLibrarySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the library object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a library and a sample" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/preparation/by/sample/{id}: + get: + operationId: "getPreparationBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related sample ID (accession)" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/group/by/study/{id}: + get: + operationId: "getPreparationGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete links between samples and preparations related to the specified\ + \ group" + operationId: "deletePreparationGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete links between samples and preparations related to the specified\ + \ group" + tags: + - "Preparation integration as Curator" + post: + description: "Create links between samples and preparations.\n\nPreparation\ + \ objects of the same group can only be linked to objects of the same study." + operationId: "createPreparationGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between samples and preparations" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationLinksToSamplesAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ preparations, not unique pairs." + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete a link between a preparation and a sample" + operationId: "deletePreparationSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a link between a preparation and a sample" + tags: + - "Preparation integration as Curator" + post: + description: "Create a link between a preparation and a sample.\n\nPreparation\ + \ objects of the same group can only be linked to objects of the same study." + operationId: "createPreparationSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a preparation and a sample" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparations/by/samples: + get: + description: "Retrieve preparation metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationsBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related samples" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}: + delete: + description: "Delete link between a group of sample objects and a study" + operationId: "deleteSampleGroupStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of sample objects and a study" + tags: + - "Sample integration as Curator" + post: + description: "Create a link between a group of sample objects and a study.\n\ + \nSample objects of the same group can only be linked to the same study." + operationId: "createSampleGroupStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of sample objects and a study" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}: + delete: + description: "Delete link between a sample and a study" + operationId: "deleteSampleStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a sample and a study" + tags: + - "Sample integration as Curator" + post: + description: "Create a link between a sample and a study.\n\nSample objects\ + \ of the same group can only be linked to the same study." + operationId: "createSampleStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a sample and a study" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/libraries: + get: + description: "Retrieve sample metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related libraries" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/preparations: + get: + description: "Retrieve sample metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related preparations" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/study/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related study ID (accession)" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/studies/by/libraries: + get: + description: "Retrieve study metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related libraries" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/preparations: + get: + description: "Retrieve study metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related preparations" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/samples: + get: + description: "Retrieve study metadata objects whose linked sample metadata matches\ + \ all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getStudiesBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\"\ + . Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related samples" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/study/by/sample/{id}: + get: + operationId: "getStudyBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying sample ID (accession)" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/files: + get: + description: "Retrieve study metadata objects whose linked attached files metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Attachment files (full-text or metadata key-value\ + \ pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To retrieve\ + \ all results, iterate through pages using `pageOffset` values of `n * pageLimit`\ + \ until a page returns fewer results than the page limit, which indicates\ + \ there are no more results.\n\n" + operationId: "getStudiesByFilesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by attachment file metadata (key-value metadata pair(s)).\ + \ E.g. \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all attached files metadata fields. E.g. \"RNA-Seq of human dendritic\ + \ cells\". Queries matching dictionary terms are automatically expanded\ + \ to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related attachment files" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/study/by/file/{id}: + get: + operationId: "getStudyByFileAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying attachment file ID (accession)" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/variant/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getVariantBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant run-level data by querying related sample ID (accession)" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getVariantGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of variant objects and a group of\ + \ sample objects" + operationId: "deleteVariantGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a VCF file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of variant objects and a group of sample\ + \ objects" + tags: + - "Variant integration as Curator" + post: + description: "Create a link between a group of variant objects and a group of\ + \ sample objects.\n\nA variant object can be linked to one object only. If\ + \ a variant object is already linked to another object, this link will be\ + \ deleted and a new link with the specified object will be created.\nVariant\ + \ objects of the same group can only be linked to objects of the same study.\n\ + \n Users can specify a custom metadata field for linking omics data to samples\ + \ via the “linkingAttribute” parameter, if not specified the “Sample Source\ + \ ID“ sample metadata attribute will be used by default." + operationId: "createVariantGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a VCF file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of variant objects and a group of sample\ + \ objects" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getVariantRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between a variant object and a sample" + operationId: "deleteVariantSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a variant object and a sample" + tags: + - "Variant integration as Curator" + post: + description: "Create a link between a variant object and a sample.\n\nA variant\ + \ object can be linked to one object only. If a variant object is already\ + \ linked to another object, this link will be deleted and a new link with\ + \ the specified object will be created.\nVariant objects of the same group\ + \ can only be linked to objects of the same study." + operationId: "createVariantSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a variant object and a sample" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/fulltext/search/studies: + post: + description: "Find studies and retrieve their data using full-text search or\ + \ facet search by metadata of study itself or child object (samples, libraries,\ + \ preparations, signal groups). Only studies available to that users are returned.\n\ + \nThe endpoint returns:\n- a list of studies with their metadata summary;\n\ + - a list of filter objects with counts; filter list is the same for all users\ + \ in an and can be configured in “Study Browser” application via \"Configure\ + \ facets\" (by a user with corresponding permission); for each filter object,\ + \ only the first 5 most popular facets are returned, the facts are sorted\ + \ by the count value in descending order; only studies available to user are\ + \ counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"\ + `\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the\ + \ request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can\ + \ be passed in the request body.\n\nTo filter studies via facets, the filter\ + \ attributes are necessary: type = SELECT, filterOptionId. For details, use\ + \ the request body model. filterOptionId can be obtained from the response\ + \ body when the endpoint is first called without filters. Multiple filters\ + \ with type = SELECT can be passed in the request body. Filters within the\ + \ same attribute are automatically used with the OR operator. Filters of different\ + \ attributes are automatically used with the AND operator. This behaviour\ + \ can not be changed.\n\nIt is possible to call the endpoint without any filters,\ + \ then all the studies available to the user are returned." + operationId: "searchStudiesByFilterAsCurator" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/SearchStudyRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FindObjectsResponse" + description: "The request was successful. Retrieved studies and filters." + "400": + content: {} + description: "Invalid request body" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Genestack\ + \ API token in the `Genestack-API-Token` HTTP header (this token may be\ + \ obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + summary: "Find and retrieve studies by full-text or facet query" + tags: + - "Study integration as Curator" + x-codegen-request-body-name: "request" + /api/v1/as-curator/links: + delete: + description: "This method should be used in case you want to delete the links\ + \ of an object. Please, keep in mind that deleting a link between Study and\ + \ Sample will not delete a link between corresponding Sample and it’s signal." + operationId: "deleteLinkAsCurator" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + responses: + "204": + content: {} + description: "Link has been successfully deleted." + "400": + content: {} + description: "Invalid data in request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No links were found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Deletes existing links matching the specified criteria." + tags: + - "Linkage as Curator" + get: + description: "Please make sure that this endpoint should be used only for getting\ + \ all links to a specific object. In case you specify both firstId and secondId\ + \ an expected answer would be true for existing links and false for no link\ + \ between the objects." + operationId: "getLinksByParamsAsCurator" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + - description: "Param says to skip that many links before beginning to return\ + \ links." + in: "query" + name: "offset" + schema: + default: 0 + format: "int32" + type: "integer" + - description: "Param says to limit the count of returned links." + in: "query" + name: "limit" + schema: + default: 1000 + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links matching the specified criteria." + tags: + - "Linkage as Curator" + post: + description: "This method should be used only in case you need to create links\ + \ between 2 objects. Links are created both ways (e.g. when linking Object\ + \ A to Object B it can be done both ways, by linking firstType to secondType\ + \ and vice versa)." + operationId: "saveLinksAsCurator" + requestBody: + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Link" + type: "array" + required: false + responses: + "200": + content: {} + description: "Links were updated or not modified." + "201": + content: {} + description: "At least one new link has been created.Some other links might\ + \ have been updated or not modified." + "400": + content: {} + description: "Invalid data in request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "409": + content: {} + description: "Link cannot be created due to conflict with existing link" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Creates new links between objects." + tags: + - "Linkage as Curator" + x-codegen-request-body-name: "links" + /api/v1/as-curator/links/get-batch: + post: + description: "Please make sure to use that endpoint for batch calls only. You\ + \ are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the\ + \ same time. Please always specify firstType." + operationId: "getLinksByIdsAsCurator" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/BatchOfIds" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links by passing many IDs. \nPagination goes through\ + \ all links matched the criteria." + tags: + - "Linkage as Curator" + x-codegen-request-body-name: "request" + /api/v1/as-curator/omics/cells: + get: + description: "Retrieve cell objects whose linked data matches all supplied conditions.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies\ + \ (full-text or metadata key-value pair)\n2. Samples (full-text or metadata\ + \ key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4.\ + \ Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsAsCurator" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms.\n" + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`\n" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`\n" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `reversed-phase liquid chromatography`.\ + \ Queries matching dictionary terms are automatically expanded to include\ + \ synonyms.\n" + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to cell expression data and originally\ + \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the cell measurements\ + \ has values from a certain range. Examples: `value = 3`, `value > 3`, `-3\ + \ < value < 3`.\n \nCombine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows\ + \ where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where\ + \ Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`:\ + \ Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A\ + \ && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B.\ + \ \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example\ + \ above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select\ + \ all rows where Name_1 is A and either Name_2 is B or minimal possible\ + \ measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve Cell objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/cells/expression/data: + get: + description: "Retrieve cell expression objects by searching across multiple\ + \ metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + 1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text\ + \ or metadata key-value pair)\n3. Libraries (full-text or metadata key-value\ + \ pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsExpressionDataAsCurator" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cell expression objects by searching across multiple metadata\ + \ types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/data: + get: + description: "Retrieve any data objects whose linked data matches all supplied\ + \ conditions.This endpoint does not support search by expression linked to\ + \ Cell group. Use /omics/cells/expression/data endpoint for search by Cell\ + \ expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. To return all results iterate\ + \ through pages using cursor values until the `resultsExhausted` response\ + \ field is true.\n\n" + operationId: "omicsSearchExpressionDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve data objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchExpressionGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/streamed-data: + get: + description: "Stream data from a given group for a tabular file that matches\ + \ a sample/library/preparations query/filter. If no query/filters are supplied\ + \ all expression data is returned. If a metadata filter is specified, this\ + \ endpoint will only return expression data that is associated with a sample\ + \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ + \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ + \ filters are key-value pairs joined by an operator. The `=` operator matches\ + \ literal values/string. The `!=` operator matches anything except the literal\ + \ value/string. The `<` or `>` operators match numerical results that are\ + \ less or greater than the supplied value. Strings containing whitespace need\ + \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ + \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n" + operationId: "omicsSearchStreamedExpressionDataAsCurator" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Deprecated; use `exQuery` parameter instead. Filters results\ + \ by the feature column (e.g., Gene ID). The feature parameter value must\ + \ match the name of the identifier in the GCT file (under the NAME column).\ + \ Example: `ENSG00000077044`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Accession of the expression group object (GCT)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + - description: "The number of digits after the decimal point for floating-point\ + \ values. The final value is rounded up. Must be non-negative. The default\ + \ is 4." + in: "query" + name: "roundDigits" + schema: + default: 4 + format: "int32" + type: "integer" + responses: + "200": + content: + text/csv: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Expression data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given tabular file" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/flow-cytometry/data: + get: + description: "Retrieve flow cytometry data objects whose linked data matches\ + \ all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text\ + \ or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value\ + \ pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked\ + \ flow cytometry objects (list of data key-value pairs)\n5. Linked any data\ + \ (except variant and flow cytometry) objects (list of data key-value pairs)\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is; otherwise,\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Data queries\nData queries must be a list of key-value pairs, separated\ + \ by whitespace. The set of valid keys depends on the specific query type,\ + \ and is documented in the query parameter summary. The values can be simple\ + \ non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending\ + \ on the key, the value may be be a comma-delimited list of string values.\ + \ Others require numerical values.\n\n## Combinations\nMetadata queries/filters\ + \ for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n## Versioning\nSpecific versions\ + \ of omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchFlowCytometryDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry data objects by searching across multiple\ + \ data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/flow-cytometry/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchFlowCytometryGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/samples: + get: + description: "Retrieve sample metadata objects whose linked data matches all\ + \ supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchSamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata objects by searching across multiple data\ + \ types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/data: + get: + description: "Retrieve variant data objects whose linked data matches all supplied\ + \ conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked expression\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchVariantDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant data objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchVariantGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Unique identifier (accession) of Reference Genome object." + in: "query" + name: "referenceGenomeId" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/streamed-data: + get: + description: "Stream data from a given group for a VCF file that matches a sample\ + \ query/filter. If no query/filters are supplied all variant data is returned.\ + \ If a metadata filter is specified, this endpoint will only return variant\ + \ data that is associated with a sample via metadata attribute.\n\n## Conditions\n\ + It is possible to supply conditions for Samples (full-text or metadata key-value\ + \ pair)\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is; otherwise, use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n" + operationId: "omicsSearchStreamedVariantDataAsCurator" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Accession of the variant group object (VCF)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + responses: + "200": + content: + text/tab-separated-values: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Variant data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given VCF file" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/cells/analytics/cell-ratio: + post: + operationId: "cellRatioAsCurator" + summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes\ + \ in single-cell data." + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint calculates cell ratio statistics based on single-cell\ + \ metadata.\n\nIt allows quantifying the proportion of cells that meet specific\ + \ criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\n\ + relative to a defined reference group or the total cell population (`countAvailable`)\ + \ defined by study, samples, library, or preparation metadata.\n\n`countAvailable`\ + \ parameter returns all cells specified in study, sample, library, or preparation\ + \ queries and filters.\nIn case `exQuery` is selected, only cells linked to\ + \ cell expression will be counted in `countSelected` parameter.\n\nThe endpoint\ + \ supports filtering by study, sample, library, or preparation metadata and\ + \ filtering by cell expression or cell metadata fields.\n\nRequest and response\ + \ parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/CRRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CRResponse" + description: "Cell ratio result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/omics/cells/analytics/differential-expression: + post: + operationId: "differentialExpressionAsCurator" + summary: "[BETA] Perform differential gene expression analytics between case\ + \ and control cell groups" + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint computes differential gene expression between two\ + \ specified cell groups (case vs control) within single-cell data.\n\nConsult\ + \ `/omics` search endpoints to find description of parameters within the cell\ + \ groups.\nThe response includes per-gene metrics that characterize expression\ + \ differences between the two groups:\n- `Gene name` - gene identifier.\n\ + - `Case cell count` - number of cells expressing the gene in the case group.\n\ + - `Control cell count` - number of cells expressing the gene in the control\ + \ group.\n- `Average expression (case)` - mean expression level across case\ + \ cells.\n- `Average expression (control)` - mean expression level across\ + \ control cells.\n- `Expression difference` - numerical difference between\ + \ average expressions.\n- `Fold change` - ratio of average expressions between\ + \ case and control groups.\n- `U statistic` - Mann–Whitney U test statistic\ + \ that measures the difference between Case and Control groups.\n- `p-value`\ + \ - the probability of observing results as extreme as (or more extreme than)\ + \ those obtained, assuming that the null hypothesis is true.\n\nResults are\ + \ sorted by absolute value of fold change in descending order, allowing easy\ + \ identification of the most differentially expressed genes.\n\nRequest and\ + \ response parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DERequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DEResponse" + description: "Differential expression result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/omics/cells/analytics/gene-summary: + post: + operationId: "geneSummaryAsCurator" + summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries\ + \ for single-cell data." + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint provides descriptive statistical metrics for gene\ + \ expression across single-cell datasets.\nIt aggregates and summarizes expression\ + \ data for each gene to help assess variability, distribution,\nand intensity\ + \ of expression within the population of cells.\n\nThe computed metrics include:\n\ + \ - `Gene name` - gene identifier.\n - `Cell count` - number of cells with\ + \ measurable expression for each gene.\n - `Mean expression value`\n - `Median\ + \ expression value`\n - `Quantiles` - configurable expression percentiles.\n\ + \ - `Histogram (density)` - binned distribution of expression levels for\ + \ visualization.\n - `Standard deviation` - dispersion of expression values.\n\ + \ - `Minimum and maximum values` - range of expression across cells.\n\n\ + Results are sorted by gene name.\n\nRequest and response parameters are subject\ + \ to change as this feature is in BETA.\n" + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/GSRequest" + responses: + "200": + description: "Gene summary result" + content: + application/json: + schema: + $ref: "#/components/schemas/GSResponse" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token])\ + \ or Genestack API token in the `Genestack-API-Token`\nheader (this token\ + \ may be obtained from the Genestack UI _Profile_ page).\n" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\n\ + failure in the Genestack system, please file a bug report to support@genestack.com,\n\ + including the error details.\"\n" + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/integration/studies/{id}/tasks/publish-versions: + post: + description: "This endpoint publishes information from drafts and creates new\ + \ metadata versions for the specified study and all associated objects. The\ + \ version name is set to “Auto-published by API call”. Only curators with\ + \ access to the specified studies can use this method." + operationId: "publishStudyByAccessionAsCurator" + parameters: + - description: "Supply the accession of the study to be published" + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Supply text to name this version. If not supplied the version\ + \ name is set to “Auto-published by API call”" + in: "query" + name: "versionMessage" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Forbidden" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Asynchronous task that publishes all pending versions for a single\ + \ study." + tags: + - "Metadata versioning as Curator" + /api/v1/as-curator/integration/studies/{id}/validation-summary: + get: + operationId: "getStudyValidationSummary" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/StudyValidationSummary" + description: "Study validation result." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve validation summary by querying study ID (accession)" + tags: + - "Validation summary as Curator" + /api/v1/as-curator/integration/link/files/by/study/{id}: + get: + operationId: "getFilesByStudyAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by study ID" + tags: + - "Files integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}: + post: + description: "Create links between cells and samples.\n\nCell objects of the\ + \ same group can be linked to sample objects from multiple sample groups,\ + \ but only within the same study." + operationId: "createCellGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to samples." + "204": + content: {} + description: "Cell objects have been fully linked to samples." + "400": + content: {} + description: "Sample group, cell group or samples to the link were not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and samples" + tags: + - "Cell integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}: + post: + description: "Create links between cells and libraries.\n\nCell objects of the\ + \ same group can be linked to library objects from multiple library groups,\ + \ but only within the same study." + operationId: "createCellGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to libraries." + "204": + content: {} + description: "Cell objects have been fully linked to libraries." + "400": + content: {} + description: "Sample group, cell group or libraries to the link were not\ + \ found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and libraries" + tags: + - "Cell integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}: + post: + description: "Create links between cells and preparations.\n\nCell objects of\ + \ the same group can be linked to preparation objects from multiple preparation\ + \ groups, but only within the same study." + operationId: "createCellGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to preparations." + "204": + content: {} + description: "Cell objects have been fully linked to preparations." + "400": + content: {} + description: "Sample group, cell group or preparations to the link were\ + \ not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and preparations" + tags: + - "Cell integration as Curator" + /api/v1/as-user/data-types: + get: + description: "This endpoint is for instructional uses and can be used to get\ + \ the latest list of Data Types." + operationId: "getDataTypesAsUser" + responses: + "200": + content: + application/json: + schema: + items: + type: "string" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Lists all available data types." + tags: + - "Linkage as User" + /api/v1/as-user/data-types/links: + get: + description: "This endpoint should be used for instructional needs, and can\ + \ be used in order to get the links between the Data Types." + operationId: "getDataTypesLinksAsUser" + parameters: + - description: "Return only links with the specified data type." + in: "query" + name: "type" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/SourceTypePair" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List all possible links between data types that match the specified\ + \ criteria." + tags: + - "Linkage as User" + /api/v1/as-user/integration/link/expression/by/library/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByLibraryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related library ID\ + \ (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/by/preparation/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByPreparationAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related preparation\ + \ ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related sample ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getExpressionGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToLibraryPairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToPreparationPairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ + \ unique runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getFlowCytometryBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry run-level data by querying related sample\ + \ ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getFlowCytometryGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getFlowCytometryRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/libraries/by/samples: + get: + description: "Retrieve library metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibrariesBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related samples" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/by/sample/{id}: + get: + operationId: "getLibraryBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related sample ID (accession)" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/group/by/study/{id}: + get: + operationId: "getLibraryGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibraryLinksToSamplesAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library-samples pairs by group id. Pagination is based on\ + \ unique libraries, not unique pairs." + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/preparation/by/sample/{id}: + get: + operationId: "getPreparationBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related sample ID (accession)" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparation/group/by/study/{id}: + get: + operationId: "getPreparationGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationLinksToSamplesAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ preparations, not unique pairs." + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparations/by/samples: + get: + description: "Retrieve preparation metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationsBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related samples" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/samples/by/libraries: + get: + description: "Retrieve sample metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related libraries" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/samples/by/preparations: + get: + description: "Retrieve sample metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related preparations" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/samples/by/study/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related study ID (accession)" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/studies/by/libraries: + get: + description: "Retrieve study metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related libraries" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/preparations: + get: + description: "Retrieve study metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related preparations" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/samples: + get: + description: "Retrieve study metadata objects whose linked sample metadata matches\ + \ all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getStudiesBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\"\ + . Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related samples" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/study/by/sample/{id}: + get: + operationId: "getStudyBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying sample ID (accession)" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/files: + get: + description: "Retrieve study metadata objects whose linked attached files metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Attachment files (full-text or metadata key-value\ + \ pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To retrieve\ + \ all results, iterate through pages using `pageOffset` values of `n * pageLimit`\ + \ until a page returns fewer results than the page limit, which indicates\ + \ there are no more results.\n\n" + operationId: "getStudiesByFilesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by attachment file metadata (key-value metadata pair(s)).\ + \ E.g. \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all attached files metadata fields. E.g. \"RNA-Seq of human dendritic\ + \ cells\". Queries matching dictionary terms are automatically expanded\ + \ to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related attachment files" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/study/by/file/{id}: + get: + operationId: "getStudyByFileAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying attachment file ID (accession)" + tags: + - "Study integration as User" + /api/v1/as-user/integration/fulltext/search/studies: + post: + description: "Find studies and retrieve their data using full-text search or\ + \ facet search by metadata of study itself or child object (samples, libraries,\ + \ preparations, signal groups). Only studies available to that users are returned.\n\ + \nThe endpoint returns:\n- a list of studies with their metadata summary;\n\ + - a list of filter objects with counts; filter list is the same for all users\ + \ in an and can be configured in “Study Browser” application via \"Configure\ + \ facets\" (by a user with corresponding permission); for each filter object,\ + \ only the first 5 most popular facets are returned, the facts are sorted\ + \ by the count value in descending order; only studies available to user are\ + \ counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"\ + `\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the\ + \ request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can\ + \ be passed in the request body.\n\nTo filter studies via facets, the filter\ + \ attributes are necessary: type = SELECT, filterOptionId. For details, use\ + \ the request body model. filterOptionId can be obtained from the response\ + \ body when the endpoint is first called without filters. Multiple filters\ + \ with type = SELECT can be passed in the request body. Filters within the\ + \ same attribute are automatically used with the OR operator. Filters of different\ + \ attributes are automatically used with the AND operator. This behaviour\ + \ can not be changed.\n\nIt is possible to call the endpoint without any filters,\ + \ then all the studies available to the user are returned." + operationId: "searchStudiesByFilterAsUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/SearchStudyRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FindObjectsResponse" + description: "The request was successful. Retrieved studies and filters." + "400": + content: {} + description: "Invalid request body" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Genestack\ + \ API token in the `Genestack-API-Token` HTTP header (this token may be\ + \ obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + summary: "Find and retrieve studies by full-text or facet query" + tags: + - "Study integration as User" + x-codegen-request-body-name: "request" + /api/v1/as-user/integration/link/variant/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getVariantBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant run-level data by querying related sample ID (accession)" + tags: + - "Variant integration as User" + /api/v1/as-user/integration/link/variant/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getVariantGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Variant integration as User" + /api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getVariantRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Variant integration as User" + /api/v1/as-user/links: + get: + description: "Please make sure that this endpoint should be used only for getting\ + \ all links to a specific object. In case you specify both firstId and secondId\ + \ an expected answer would be true for existing links and false for no link\ + \ between the objects." + operationId: "getLinksByParamsAsUser" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + - description: "Param says to skip that many links before beginning to return\ + \ links." + in: "query" + name: "offset" + schema: + default: 0 + format: "int32" + type: "integer" + - description: "Param says to limit the count of returned links." + in: "query" + name: "limit" + schema: + default: 1000 + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links matching the specified criteria." + tags: + - "Linkage as User" + /api/v1/as-user/links/get-batch: + post: + description: "Please make sure to use that endpoint for batch calls only. You\ + \ are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the\ + \ same time. Please always specify firstType." + operationId: "getLinksByIdsAsUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/BatchOfIds" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links by passing many IDs. \nPagination goes through\ + \ all links matched the criteria." + tags: + - "Linkage as User" + x-codegen-request-body-name: "request" + /api/v1/as-user/omics/cells: + get: + description: "Retrieve cell objects whose linked data matches all supplied conditions.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies\ + \ (full-text or metadata key-value pair)\n2. Samples (full-text or metadata\ + \ key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4.\ + \ Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsAsUser" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms.\n" + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`\n" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`\n" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `reversed-phase liquid chromatography`.\ + \ Queries matching dictionary terms are automatically expanded to include\ + \ synonyms.\n" + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to cell expression data and originally\ + \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the cell measurements\ + \ has values from a certain range. Examples: `value = 3`, `value > 3`, `-3\ + \ < value < 3`.\n \nCombine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows\ + \ where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where\ + \ Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`:\ + \ Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A\ + \ && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B.\ + \ \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example\ + \ above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select\ + \ all rows where Name_1 is A and either Name_2 is B or minimal possible\ + \ measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve Cell objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/cells/expression/data: + get: + description: "Retrieve cell expression objects by searching across multiple\ + \ metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + 1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text\ + \ or metadata key-value pair)\n3. Libraries (full-text or metadata key-value\ + \ pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsExpressionDataAsUser" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cell expression objects by searching across multiple metadata\ + \ types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/data: + get: + description: "Retrieve any data objects whose linked data matches all supplied\ + \ conditions.This endpoint does not support search by expression linked to\ + \ Cell group. Use /omics/cells/expression/data endpoint for search by Cell\ + \ expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. To return all results iterate\ + \ through pages using cursor values until the `resultsExhausted` response\ + \ field is true.\n\n" + operationId: "omicsSearchExpressionDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve data objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchExpressionGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/streamed-data: + get: + description: "Stream data from a given group for a tabular file that matches\ + \ a sample/library/preparations query/filter. If no query/filters are supplied\ + \ all expression data is returned. If a metadata filter is specified, this\ + \ endpoint will only return expression data that is associated with a sample\ + \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ + \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ + \ filters are key-value pairs joined by an operator. The `=` operator matches\ + \ literal values/string. The `!=` operator matches anything except the literal\ + \ value/string. The `<` or `>` operators match numerical results that are\ + \ less or greater than the supplied value. Strings containing whitespace need\ + \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ + \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n \n\n## Error Handling\n In case\ + \ of unexpected internal error during data retrieval, the last line of the\ + \ body will contain an error message, prefixed by the `#` character \n\n" + operationId: "omicsSearchStreamedExpressionDataAsUser" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"\ + Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Deprecated; use `exQuery` parameter instead. Filters results\ + \ by the feature column (e.g., Gene ID). The feature parameter value must\ + \ match the name of the identifier in the GCT file (under the NAME column).\ + \ Example: `ENSG00000077044`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Accession of the expression group object (GCT)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + - description: "The number of digits after the decimal point for floating-point\ + \ values. The final value is rounded up. Must be non-negative. The default\ + \ is 4." + in: "query" + name: "roundDigits" + schema: + default: 4 + format: "int32" + type: "integer" + responses: + "200": + content: + text/csv: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Expression data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given tabular file" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/flow-cytometry/data: + get: + description: "Retrieve flow cytometry data objects whose linked data matches\ + \ all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text\ + \ or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value\ + \ pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked\ + \ flow cytometry objects (list of data key-value pairs)\n5. Linked any data\ + \ (except variant and flow cytometry) objects (list of data key-value pairs)\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is; otherwise,\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Data queries\nData queries must be a list of key-value pairs, separated\ + \ by whitespace. The set of valid keys depends on the specific query type,\ + \ and is documented in the query parameter summary. The values can be simple\ + \ non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending\ + \ on the key, the value may be be a comma-delimited list of string values.\ + \ Others require numerical values.\n\n## Combinations\nMetadata queries/filters\ + \ for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n## Versioning\nSpecific versions\ + \ of omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchFlowCytometryDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry data objects by searching across multiple\ + \ data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/flow-cytometry/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchFlowCytometryGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/samples: + get: + description: "Retrieve sample metadata objects whose linked data matches all\ + \ supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchSamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata objects by searching across multiple data\ + \ types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/data: + get: + description: "Retrieve variant data objects whose linked data matches all supplied\ + \ conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked expression\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchVariantDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant data objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchVariantGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Unique identifier (accession) of Reference Genome object." + in: "query" + name: "referenceGenomeId" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/streamed-data: + get: + description: "Stream data from a given group for a VCF file that matches a sample\ + \ query/filter. If no query/filters are supplied all variant data is returned.\ + \ If a metadata filter is specified, this endpoint will only return variant\ + \ data that is associated with a sample via metadata attribute.\n\n## Conditions\n\ + It is possible to supply conditions for Samples (full-text or metadata key-value\ + \ pair)\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is; otherwise, use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n" + operationId: "omicsSearchStreamedVariantDataAsUser" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Accession of the variant group object (VCF)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + responses: + "200": + content: + text/tab-separated-values: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Variant data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given VCF file" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/cells/analytics/cell-ratio: + post: + operationId: "cellRatioAsUser" + summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes\ + \ in single-cell data." + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint calculates cell ratio statistics based on single-cell\ + \ metadata.\n\nIt allows quantifying the proportion of cells that meet specific\ + \ criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\n\ + relative to a defined reference group or the total cell population (`countAvailable`)\ + \ defined by study, samples, library, or preparation metadata.\n\n`countAvailable`\ + \ parameter returns all cells specified in study, sample, library, or preparation\ + \ queries and filters.\nIn case `exQuery` is selected, only cells linked to\ + \ cell expression will be counted in `countSelected` parameter.\n\nThe endpoint\ + \ supports filtering by study, sample, library, or preparation metadata and\ + \ filtering by cell expression or cell metadata fields.\n\nRequest and response\ + \ parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/CRRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CRResponse" + description: "Cell ratio result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/omics/cells/analytics/differential-expression: + post: + operationId: "differentialExpressionAsUser" + summary: "[BETA] Perform differential gene expression analytics between case\ + \ and control cell groups" + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint computes differential gene expression between two\ + \ specified cell groups (case vs control) within single-cell data.\n\nConsult\ + \ `/omics` search endpoints to find description of parameters within the cell\ + \ groups.\nThe response includes per-gene metrics that characterize expression\ + \ differences between the two groups:\n- `Gene name` - gene identifier.\n\ + - `Case cell count` - number of cells expressing the gene in the case group.\n\ + - `Control cell count` - number of cells expressing the gene in the control\ + \ group.\n- `Average expression (case)` - mean expression level across case\ + \ cells.\n- `Average expression (control)` - mean expression level across\ + \ control cells.\n- `Expression difference` - numerical difference between\ + \ average expressions.\n- `Fold change` - ratio of average expressions between\ + \ case and control groups.\n- `U statistic` - Mann–Whitney U test statistic\ + \ that measures the difference between Case and Control groups.\n- `p-value`\ + \ - the probability of observing results as extreme as (or more extreme than)\ + \ those obtained, assuming that the null hypothesis is true.\n\nResults are\ + \ sorted by absolute value of fold change in descending order, allowing easy\ + \ identification of the most differentially expressed genes.\n\nRequest and\ + \ response parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DERequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DEResponse" + description: "Differential expression result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/omics/cells/analytics/gene-summary: + post: + operationId: "geneSummaryAsUser" + summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries\ + \ for single-cell data." + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint provides descriptive statistical metrics for gene\ + \ expression across single-cell datasets.\nIt aggregates and summarizes expression\ + \ data for each gene to help assess variability, distribution,\nand intensity\ + \ of expression within the population of cells.\n\nThe computed metrics include:\n\ + \ - `Gene name` - gene identifier.\n - `Cell count` - number of cells with\ + \ measurable expression for each gene.\n - `Mean expression value`\n - `Median\ + \ expression value`\n - `Quantiles` - configurable expression percentiles.\n\ + \ - `Histogram (density)` - binned distribution of expression levels for\ + \ visualization.\n - `Standard deviation` - dispersion of expression values.\n\ + \ - `Minimum and maximum values` - range of expression across cells.\n\n\ + Results are sorted by gene name.\n\nRequest and response parameters are subject\ + \ to change as this feature is in BETA.\n" + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/GSRequest" + responses: + "200": + description: "Gene summary result" + content: + application/json: + schema: + $ref: "#/components/schemas/GSResponse" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token])\ + \ or Genestack API token in the `Genestack-API-Token`\nheader (this token\ + \ may be obtained from the Genestack UI _Profile_ page).\n" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\n\ + failure in the Genestack system, please file a bug report to support@genestack.com,\n\ + including the error details.\"\n" + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/integration/link/files/by/study/{id}: + get: + operationId: "getFilesByStudyAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by study ID" + tags: + - "Files integration as User" + /api/v1/jobs/import/study: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportStudy" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import study metadata from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/samples: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportSamples" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of sample metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/samples/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportSamplesMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of sample metadata objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/libraries: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportLibraries" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of library metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/libraries/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportLibrariesMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of library metadata objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/preparations: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportPreparations" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of preparation metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/preparations/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportPreparationsMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of preparation metadata objects from a TSV file via\ + \ multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/cells: + post: + description: "\nThe endpoint initiates a job to import cell data and creates\ + \ a Cell Group to manage it.\n\nWhen job finishes successfully the following\ + \ **result** object can be obtained using `GET /job/{id}/output` request:\n\ + \n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\ + \n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the\ + \ request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored;\ + \ if more than 3 are provided, only the first 3 are kept and the rest are\ + \ ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** PCA component is provided, the request\ + \ is invalid.\n - At most **100** PCA components are stored; components beyond\ + \ 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length\ + \ of the embedding vector for each cell.\n- Ignoring excess dimensions/components\ + \ does not cause an error; validation errors occur only when the number is\ + \ exactly **1**.\n" + operationId: "startImportCells" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportCellsRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of cell data objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/cells/multipart: + post: + description: "\nThe endpoint initiates a job to import cell data and creates\ + \ a Cell Group to manage it.\n\nWhen job finishes successfully the following\ + \ **result** object can be obtained using `GET /job/{id}/output` request:\n\ + \n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\ + \n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the\ + \ request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored;\ + \ if more than 3 are provided, only the first 3 are kept and the rest are\ + \ ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** PCA component is provided, the request\ + \ is invalid.\n - At most **100** PCA components are stored; components beyond\ + \ 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length\ + \ of the embedding vector for each cell.\n- Ignoring excess dimensions/components\ + \ does not cause an error; validation errors occur only when the number is\ + \ exactly **1**.\n" + operationId: "startImportCellsMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportCellsFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of cell data objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/expression: + post: + description: "## Data\n This operation necessitates the URL of a tabular data\ + \ file, which must be either in TSV or GCT 1.2 format. Consult the user guide\ + \ for a comprehensive understanding of the file content requirements. The\ + \ endpoint is capable of handling uploads of any data type, which can be detailed\ + \ in the parameters section, not only Gene Expression data.\n\n## Metadata\n\ + \ It is also possible to optionally supply the URL of a metadata file. This\ + \ metadata will be used as the original metadata for the created objects.\ + \ The file is expected to contain single record with metadata describing the\ + \ uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster\ + \ Text (GCT) and Tab-separated format (TSV), attribute names and record values\ + \ are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence\ + \ (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported,\ + \ treated as archives and get decompressed\n * Header: the first line is treated\ + \ as table header that contains attribute names\n * Records: the second line\ + \ contains the values for each of the attributes described in the header line.\ + \ Values represent single string or list of strings. List values are separated\ + \ using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace\ + \ before parsing, and a literal `|` (`U+007C`) character may be escaped by\ + \ repeating it twice.\n * Skip zeros in original data file: If this option\ + \ is selected, zeros in the file will be ignored, thus conserving time and\ + \ space. This option is particularly useful for handling very sparse data\ + \ such as Single Cell data." + operationId: "startImportExpression" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportExpressionSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import any tabular data from TSV or GCT files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/expression/multipart: + post: + description: "## Data\n This operation necessitates the URL of a tabular data\ + \ file, which must be either in TSV or GCT 1.2 format. Consult the user guide\ + \ for a comprehensive understanding of the file content requirements. The\ + \ endpoint is capable of handling uploads of any data type, which can be detailed\ + \ in the parameters section, not only Gene Expression data.\n\n## Metadata\n\ + \ It is also possible to optionally supply the URL of a metadata file. This\ + \ metadata will be used as the original metadata for the created objects.\ + \ The file is expected to contain single record with metadata describing the\ + \ uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster\ + \ Text (GCT) and Tab-separated format (TSV), attribute names and record values\ + \ are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence\ + \ (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported,\ + \ treated as archives and get decompressed\n * Header: the first line is treated\ + \ as table header that contains attribute names\n * Records: the second line\ + \ contains the values for each of the attributes described in the header line.\ + \ Values represent single string or list of strings. List values are separated\ + \ using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace\ + \ before parsing, and a literal `|` (`U+007C`) character may be escaped by\ + \ repeating it twice.\n * Skip zeros in original data file: If this option\ + \ is selected, zeros in the file will be ignored, thus conserving time and\ + \ space. This option is particularly useful for handling very sparse data\ + \ such as Single Cell data." + operationId: "startImportExpressionMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import any tabular data from TSV or GCT files via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/variant: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n " + operationId: "startImportVariant" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import variation data and metadata from VCF and TSV files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/variant/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n " + operationId: "startImportVariantMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import variation data and metadata from VCF and TSV files via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/flow-cytometry: + post: + description: "This operation necessitates the URL of a gated flow cytometry\ + \ data file, which must be in FACS format.\nConsult the user guide for a comprehensive\ + \ understanding of the file content requirements.\nFor flow cytometry data\ + \ in FCS format use expression endpoint.\n\nWhen job finishes successfully\ + \ the following **result** object\ncan be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```" + operationId: "startImportFlowCytometry" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import flow-cytometry data and metadata from FACS and TSV files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/flow-cytometry/multipart: + post: + description: "This operation necessitates the URL of a gated flow cytometry\ + \ data file, which must be in FACS format.\nConsult the user guide for a comprehensive\ + \ understanding of the file content requirements.\nFor flow cytometry data\ + \ in FCS format use expression endpoint.\n\nWhen job finishes successfully\ + \ the following **result** object\ncan be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```" + operationId: "startImportFlowCytometryMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import flow-cytometry data and metadata from FACS and TSV files via\ + \ multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/file: + post: + description: "In order to import a file as an attachment to a study, please\ + \ fill in the following fields:\n\n* `source` - The source parameter is ignored\ + \ and will be removed in version 1.61. The source is automatically extracted\ + \ from the link.\n* `dataLink` - a link to a file to import as an attachment.\n\ + The file will be associated with a study and will be searchable by its name\ + \ and metadata.\n* `metadataLink` - an optional URL of a metadata file to\ + \ be used as the original metadata\nfor the created objects. The file must\ + \ contain a single record describing the uploaded attachment.\n* `studyAccession`\ + \ - an accession of a study the file will be associated with.\n* `dataClass`\ + \ - file data class with the following possible values: `Bulk\ntranscriptomics`,\ + \ `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`,\ + \ `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n\ + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging\ + \ features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood\ + \ counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`,\ + \ `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number\ + \ alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic\ + \ screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job\ + \ finishes successfully the following **result** object can be obtained using\ + \ `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\ + \n}\n```" + operationId: "startImportAFile" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportAFileRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import file as an attachment" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/file/multipart: + post: + description: "In order to import a file as an attachment to a study, please\ + \ fill in the following fields:\n\n* `data` - a file to import as an attachment.\n\ + The file will be associated with a study and will be searchable by its name\ + \ and metadata.\n* `metadata` - an optional metadata file to be used as the\ + \ original metadata\nfor the created objects. The file must contain a single\ + \ record describing the uploaded attachment.\n* `studyAccession` - an accession\ + \ of a study the file will be associated with.\n* `dataClass` - file data\ + \ class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell\ + \ transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`,\ + \ `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`,\ + \ `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel\ + \ data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\n\ + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry\ + \ (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`,\ + \ `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR\ + \ / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully\ + \ the following **result** object can be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```" + operationId: "startImportAFileMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportAFileFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import file as an attachment via multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/{jobExecId}/info: + get: + operationId: "info" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "get information about one particular job execution" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/output: + get: + operationId: "output" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Output" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "retrieve job output (result)" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/restart: + put: + operationId: "restart" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "restart stopped (failed) job" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/stop: + put: + operationId: "stop" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "stop running job" + tags: + - "Job operations" + /api/v1/as-curator/libraries: + get: + description: "Retrieve library metadata objects by searching/listing library\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages using `pageOffset`\ + \ values of `n * pageLimit` until a page returns fewer results than the page\ + \ limit, which indicates there are no more results.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all variant objects." + operationId: "searchLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for library metadata objects" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/by/group/{id}: + get: + operationId: "getLibrariesByGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve libraries related to the given group" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/{id}: + get: + operationId: "getLibraryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateLibraryAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a library object" + tags: + - "Library SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/libraries/{id}/versions: + get: + operationId: "getLibraryVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/{id}/versions/{version}: + get: + operationId: "getLibraryByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as Curator" + /api/v1/as-user/libraries: + get: + description: "Retrieve library metadata objects by searching/listing library\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages using `pageOffset`\ + \ values of `n * pageLimit` until a page returns fewer results than the page\ + \ limit, which indicates there are no more results.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all variant objects." + operationId: "searchLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for library metadata objects" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/by/group/{id}: + get: + operationId: "getLibrariesByGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve libraries related to the given group" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}: + get: + operationId: "getLibraryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}/versions: + get: + operationId: "getLibraryVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}/versions/{version}: + get: + operationId: "getLibraryByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as User" + /api/v1/manage-data/detached-objects: + get: + description: "Retrieve various types of detached data objects. An object is\ + \ defined as 'detached' if it lacks any direct or indirect link to a root-level\ + \ object, which in this context is referred to as 'study'.\nStudy is considered\ + \ as detached object itself in case there are no links to objects at a lower\ + \ level.\nData with specific `detachedObjectType` can be retrieved by specifying\ + \ the types in `detachedObjectType` parameter.\nThe detached objects are sorted\ + \ according to their `detachedObjectType` and `genestack:accession`.\nSpecific\ + \ ordering can be observed in the list of supported detached types found below.\n\ + Pagination of the results can be conveniently managed using the `cursor` and\ + \ `limit` parameters.\n Supported types of detached objects (listed in the\ + \ order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n\ + \ * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n\ + \ * `FLOW_CYTOMETRY`\n\n" + operationId: "getDetachedObjects" + parameters: + - description: "Filter by detached object type. Multiple values can be used\ + \ to filter the data." + explode: true + in: "query" + name: "detachedObjectType" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "limit" + schema: + format: "int32" + type: "integer" + - description: "This parameter enables retrieval of objects starting from a\ + \ specific point.\n Currently, it represents the accession of the last obtained\ + \ object. However, please note that its functionality might change over\ + \ time, so it is advisable to consider the cursor's content as a general\ + \ string." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DetachedCollection" + description: "Retrieved detached data." + "400": + content: {} + description: "Detached data cannot be retrieved due to Bad Request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of detached objects" + tags: + - "Manage Data" + /api/v1/manage-data/data: + delete: + description: "The objects will be marked for deletion. In case the selected\ + \ object has more than one version, the endpoint deletes all of them. The\ + \ following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n\ + \ * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n\ + \ * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n\ + \ * `FILE`\n\n Moreover, if the selected object is linked to any other data,\ + \ the endpoint will also delete the linked data associated with it according\ + \ to the specified rules:\n * If you delete a `STUDY`, the entire study with\ + \ all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP`\ + \ will result in the removal of all samples associated with this sample group,\ + \ along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`.\ + \ The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will\ + \ be deleted, even if it is linked to another metadata group.\n * Deleting\ + \ a `SAMPLE_OBJECT` will result in the removal of that sample from the study,\ + \ and it will not be displayed in the version history. If a `LIBRARY_OBJECT`\ + \ or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted\ + \ as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result\ + \ in the removal of all libraries or preparations associated with this group,\ + \ along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP`\ + \ will result in the removal of linked `TABULAR_DATA` (cell expression group).\n\ + \ * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated\ + \ data, such as links and runs will be removed from ODM.\n * If you delete\ + \ `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't\ + \ be available for linked VCF groups.\n * If you delete `FILE`, the file will\ + \ be removed from ODM." + operationId: "deleteData" + parameters: + - description: "Accessions files to be deleted." + explode: false + in: "query" + name: "accessions" + schema: + items: + type: "string" + type: "array" + style: "form" + responses: + "202": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/ManagedObject" + type: "array" + description: "The deletion of the following files and all linked data has\ + \ started." + "400": + content: {} + description: "Deletion could not be performed due to Bad Request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method or the file is not meant\ + \ to be deleted." + "404": + content: {} + description: "Some of the provided accessions could not be found in ODM.\ + \ Deletion will not be preformed. Please review your list and repeat the\ + \ attempt." + "406": + content: {} + description: "Some of the provided accessions do not belong to the supported\ + \ object types. Deletion will not be performed. Please review your list\ + \ and repeat the attempt." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete objects from ODM" + tags: + - "Manage Data" + /api/v1/as-curator/preparations: + get: + description: "Retrieve preparation metadata objects by searching/listing preparation\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To return all results iterate through pages using pageOffset\ + \ values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all variant objects." + operationId: "searchPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for preparation metadata objects" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/by/group/{id}: + get: + operationId: "getPreparationsByGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparations related to the given group" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/{id}: + get: + operationId: "getPreparationAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updatePreparationAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a preparation object" + tags: + - "Preparation SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/preparations/{id}/versions: + get: + operationId: "getPreparationVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/{id}/versions/{version}: + get: + operationId: "getPreparationByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-user/preparations: + get: + description: "Retrieve preparation metadata objects by searching/listing preparation\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To return all results iterate through pages using pageOffset\ + \ values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all variant objects." + operationId: "searchPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for preparation metadata objects" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/by/group/{id}: + get: + operationId: "getPreparationsByGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparations related to the given group" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}: + get: + operationId: "getPreparationAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}/versions: + get: + operationId: "getPreparationVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}/versions/{version}: + get: + operationId: "getPreparationByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as User" + /api/v1/xrefsets: + post: + operationId: "create" + requestBody: + description: "Request body for creating a new xrefset.\n## Important:\nThe\ + \ length of 'sourceId' strings is limited to 255 characters. Ensure that\ + \ the provided values adhere to this limitation to avoid data truncation.\n" + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetCreateRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetCreateResponse" + description: "successful operation" + "201": + content: {} + description: "The objects were successfully created. The returned value\ + \ is a list of created objects." + "400": + content: {} + description: "The object cannot be created. This error occurs when the supplied\ + \ data or metadata are incorrect. Please see error message for details" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to work with the xrefset." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a new xrefset file" + tags: + - "Xrefset queries" + x-codegen-request-body-name: "body" + /api/v1/xrefsets/entries: + get: + description: "## Conditions\nIt is possible to supply a list of values for \"\ + targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\"\ + \ and \"sourceId\" are supplied, the following search rule is applied: (sourceId\ + \ = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId\ + \ = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to\ + \ 255 characters. Ensure that the provided values adhere to this limitation\ + \ to avoid data truncation.\n" + operationId: "searchEntries" + parameters: + - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ + \ mapping this is gene ID, e.g. \"ENSG00000146648\"" + explode: true + in: "query" + name: "sourceId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "Supply targetId in the format \"targetId\". For transcript-gene\ + \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" + explode: true + in: "query" + name: "targetId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetSearchResult" + description: "Json object with the cursor and json array of retrieved xrefset\ + \ data. Response entries are ordered by xrefset ID and then by source\ + \ ID." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of entries across all xrefsets for given sourceId\ + \ and targetId" + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}: + delete: + operationId: "deleteFile" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + pattern: ".*" + type: "string" + responses: + "204": + content: {} + description: "Xrefset file successfully marked for deletion, mappings have\ + \ been removed" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to work with the xrefset." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a xrefset with all related data.\nOnly users who uploaded the\ + \ xrefset are allowed to delete it." + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}/entries: + get: + description: "## Conditions\nIt is possible to supply a list of values for \"\ + targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\"\ + \ and \"sourceId\" are supplied, the following search rule is applied: (sourceId\ + \ = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId\ + \ = \"Tm\").\n\n" + operationId: "searchEntriesWithinFile" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ + \ mapping this is gene ID, e.g. \"ENSG00000146648\"" + explode: true + in: "query" + name: "sourceId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "Supply targetId in the format \"targetId\". For transcript-gene\ + \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" + explode: true + in: "query" + name: "targetId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetSearchResult" + description: "Json object with the cursor and json array of retrieved xrefset\ + \ data. Response entries are ordered by xrefset ID and then by source\ + \ ID." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of entries for the given xrefset and given sourceId\ + \ and targetId" + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}/metadata: + get: + operationId: "getDetailsByAccession" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetMetadata" + description: "Object containing xrefset details, including user submitted\ + \ metadata and system info" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve xrefset details" + tags: + - "Xrefset queries" + /api/v1/reference-genomes: + get: + operationId: "search_reference_genomes" + summary: "List or search for Reference Genome objects" + tags: + - "Reference genome" + description: "Retrieve Reference Genome metadata objects by searching/listing\ + \ Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is, otherwise use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance\ + \ reasons, this endpoint returns results in \"pages\" of limited size. In\ + \ order to retrieve all matching results the client needs to request multiple\ + \ pages starting from an offset to the first result. You can do this using\ + \ the `pageOffset` query parameter. A value of 0 (the default) instructs the\ + \ server to return the first page of results, 100 would return a page of results\ + \ starting from the 101st result and so on. To retrieve all results, iterate\ + \ through pages by increasing the offset in multiples of limit (e.g., `offset\ + \ = n * limit`), until all results have been retrieved. The total number of\ + \ pages can be calculated by dividing the total number of results by the limit.\n\ + \n## List operation\n\nThis endpoint can be called without any query parameters.\ + \ When called this way, it returns a list of all Reference Genome objects." + parameters: + - in: "query" + name: "organism" + description: "Scientific name of an organism (species) used in reference genome\ + \ file (e.g. `Homo sapiens`)." + schema: + type: "string" + - in: "query" + name: "assembly" + description: "Major version (for example, `GRCh38`)." + schema: + type: "string" + - in: "query" + name: "release" + description: "Ensembl reference genome minor version (for example, `75` or\ + \ `109`)." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for reference genome via a full-text query over all reference\ + \ genome metadata fields (e.g. `GRCh38`)." + schema: + type: "string" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + post: + operationId: "upload" + summary: "Upload reference genome to ODM" + tags: + - "Reference genome" + description: "In order to import reference genome file, please fill in the following\ + \ fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any\ + \ custom reference genome in .gtf format, archived in `.gz` format.\nNote:\ + \ if any of the parameters below are not corresponding to the available Ensembl\ + \ data (for example, organism name or assembly is changed), the link must\ + \ be provided.\n* `organism` - scientific name (default: Homo sapiens). Please\ + \ see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\n\ + Note: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.)\ + \ please see the species folders name in the Ensembl FTP (release 113) to\ + \ provide the same organism name as shown in the list.\n* `assembly` - major\ + \ version (for example, `GRCh38`). Please see the list of available assemblies\ + \ [here](https://www.ensembl.org/info/website/archives/assembly.html).\n*\ + \ `release` - Ensembl reference genome minor version (for example, `75` or\ + \ `109`).\n* `name` - customized reference genome title that is used for linkage\ + \ variant files.\nBy default is combined from species, assembly and release\ + \ parameters: `{species} reference genome {assembly}.{release}`.\n\nReference\ + \ genome will be available after initialisation. Please track initialisation\ + \ task status." + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/UploadRGRequest" + required: false + responses: + "201": + content: + application/json: + schema: + $ref: "#/components/schemas/AccessionResponse" + description: "The object was successfully created." + "400": + content: {} + description: "The object cannot be created. This error occurs when the supplied\ + \ data or metadata are incorrect. Please see error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + x-codegen-request-body-name: "body" + /api/v1/reference-genomes/{id}: + get: + operationId: "get_reference_genome_by_accession" + summary: "Retrieve a single Reference Genome object by ID (accession)" + tags: + - "Reference genome" + parameters: + - in: "path" + name: "id" + description: "Unique identifier (Genestack accession) of Reference Genome\ + \ object." + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RGItem" + description: "The request was successful. The returned value is the object." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/samples: + get: + description: "Retrieve sample metadata objects by searching/listing sample metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n*pageLimit` until\ + \ the `resultsExhausted` response field is true.\n\n## List operation\n\n\ + This endpoint can be called with no `query` parameter. Doing so returns a\ + \ list of all variant objects." + operationId: "searchSamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for sample objects via a full-text query over all sample\ + \ metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for sample metadata objects" + tags: + - "Sample SPoT as Curator" + /api/v1/as-curator/samples/{id}: + get: + operationId: "getSampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateSampleAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a sample object" + tags: + - "Sample SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/samples/{id}/versions: + get: + operationId: "getSampleVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Sample SPoT as Curator" + /api/v1/as-curator/samples/{id}/versions/{version}: + get: + operationId: "getSampleByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as Curator" + /api/v1/as-user/samples: + get: + description: "Retrieve sample metadata objects by searching/listing sample metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n*pageLimit` until\ + \ the `resultsExhausted` response field is true.\n\n## List operation\n\n\ + This endpoint can be called with no `query` parameter. Doing so returns a\ + \ list of all variant objects." + operationId: "searchSamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for sample objects via a full-text query over all sample\ + \ metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for sample metadata objects" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}: + get: + operationId: "getSampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}/versions: + get: + operationId: "getSampleVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}/versions/{version}: + get: + operationId: "getSampleByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as User" + /api/v1/scim/Groups: + get: + description: "The endpoint returns a list of groups that the user has access\ + \ to: where the user is a member of the group or if the user has the \"Manage\ + \ Groups\" permission, then a list of all groups.\n The list can be filtered\ + \ by group attributes using the filter parameter. If no filtering parameters\ + \ are passed, then all available groups are returned. If there are no groups\ + \ in the response body, the endpoint returns 200 OK." + operationId: "findGroups" + parameters: + - description: "Filter by group attributes. The parameter name is case-sensitive,\ + \ therefore parameters FILTER, fiLter, and other options are ignored.\n\ + \ Supported operators:\n   eq - equal, the attribute and operator\ + \ values must be identical for a match;\n   Using other operators\ + \ returns an error.\n Groups can be filtered by displayName only.\n Attribute\ + \ names and attribute operators used in filters are case insensitive.\n\ + \ Examples of the request:\n   filter=displayName eq \"Curator\"\ + ." + in: "query" + name: "filter" + schema: + type: "string" + - description: "If excludedAttributes=members is specified in the request, groups\ + \ are returned without the members attribute. Other attributes are not supported\ + \ in excludedAttributes parameter and ignored in the request → all attributes\ + \ are returned in the response body." + in: "query" + name: "excludedAttributes" + schema: + type: "string" + - description: "The 1-based index of the first result in the current set of\ + \ list results." + in: "query" + name: "startIndex" + schema: + format: "int32" + type: "integer" + - description: "The number of resources returned in a list response page. The\ + \ value by default is 100." + in: "query" + name: "count" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/FilterGroupsResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Incorrect syntax in the request. See the error message for\ + \ details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of available groups" + tags: + - "Groups" + post: + description: "The endpoint creates a new user group in ODM. The endpoint does\ + \ not update an existing group. A user who calls the endpoint is added to\ + \ the group automatically with the \"Group admin\" role. The \"members\" attribute\ + \ in the request body must be empty, otherwise the endpoint returns an error.\n\ + \ The endpoint does not require any user permission.\n The endpoint does not\ + \ check the uniqueness of the group name. The user can create any number of\ + \ groups with the same name.\n If there are attributes in the request body\ + \ that ODM does not support, then ODM ignores them." + operationId: "createGroup" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/Group" + required: true + responses: + "201": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/GroupResponse" + description: "The operation is successful. The response body contains the\ + \ representation of the newly created group." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "409": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, data conflict. See the error\ + \ message for details." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Add a new user group" + tags: + - "Groups" + x-codegen-request-body-name: "body" + /api/v1/scim/Groups/{id}: + delete: + description: "The endpoint deletes a group in ODM. The group can be deleted,\ + \ even if it has members: admins and not admins. Users of this group are not\ + \ deactivated.\n Permissions to call the endpoint:\n   - If the\ + \ user does not have the \"Manage groups\" permission:\n     *\ + \ the user has \"Group admin\" role - the user can delete the group;\n     *\ + \ the user has \"Group member\" role - the group can not be deleted, an error\ + \ is returned;\n     * the user is not a member of the\ + \ specified group - the group can not be deleted, an error is returned.\n\ + \   - If the user has the \"Manage groups\" permission - the user\ + \ can delete the group regardless of user’s membership in this group." + operationId: "deleteGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "The group has been successfully removed. No data is returned." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied group ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Group admin\" role in the\ + \ group or the \"Manage groups\" permission is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Delete a group" + tags: + - "Groups" + get: + description: "The endpoint returns a not deleted group by id, where id is an\ + \ internal group id in ODM. Access to the group is required:\n   -\ + \ If the user has the \"Manage groups\" permission, the endpoint returns not\ + \ deleted group on the instance regardless of user’s membership in this group;\n\ + \   - If the user does not have the \"Manage groups\" permission,\ + \ the endpoint returns only groups in which the user is a member. Otherwise,\ + \ 404 Not Found is returned." + operationId: "getGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "If excludedAttributes=members is specified in the request, Groups\ + \ are returned without the members attribute. Other attributes are not supported\ + \ in excludedAttributes parameter and ignored in the request → all attributes\ + \ are returned in the response body." + in: "query" + name: "excludedAttributes" + schema: + type: "string" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/GroupResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied group ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no available groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a group by id" + tags: + - "Groups" + patch: + description: "The endpoint updates one or several attributes of a specific group,\ + \ where id is internal group id in ODM. Also the endpoints adds a new user\ + \ to the group and removes users from the group.\n\n Supported operators in\ + \ the request body: replace, add, remove. For details of the syntax of using\ + \ these operators, we recommend that you refer to the SCIM 2.0 specification.\n\ + \n The list of group attributes that can be edited: displayName, externalId,\ + \ members. If the user tries to edit other attributes, e.g. id, an error is\ + \ returned. If the user tries to edit attributes that are not supported in\ + \ the ODM group scheme, this attribute is ignored. If the request body includes\ + \ only attributes that are not supported by ODM, the endpoint returns 200\ + \ OK.\n\n A PATCH request, regardless of the number of operations, is treated\ + \ as atomic. If a single operation encounters an error condition, the original\ + \ user attributes are restored, and a failure status is returned.\n\n The\ + \ endpoint requires access to the group as admin of the group: the user has\ + \ the \"Admin group\" role in the group or the user has the \"Manage groups\"\ + \ permission." + operationId: "patchGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/GroupPatch" + required: true + responses: + "204": + content: {} + description: "Group is successfully updated. No data is returned" + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be updated, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Group admin\" role in the\ + \ group or the \"Manage groups\" permission is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Update a group" + tags: + - "Groups" + x-codegen-request-body-name: "body" + /api/v1/scim/Users: + get: + description: "The endpoint returns a list of active users. The list can be filtered\ + \ by user attributes using the filter parameter. If no filtering parameters\ + \ are passed, then all users are returned. If there are no users in the response\ + \ body, the endpoint returns 200 OK. The \"Manage organization\" permission\ + \ is required." + operationId: "findUsers" + parameters: + - description: "Filter by user attributes. The parameter name is case-sensitive,\ + \ therefore parameters FILTER, fiLter, and other options are ignored.\n\ + \ Supported operators:\n   eq - equal, the attribute and operator\ + \ values must be identical for a match;\n   and - logical \"and\"\ + , the filter is only a match if both expressions evaluate to true;\n   Using\ + \ other operators returns an error.\n Attribute names and attribute operators\ + \ used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type\ + \ eq \"work\" and value eq \"user@example.com\"] - returns a user with login\ + \ = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type\ + \ eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\"\ + ." + in: "query" + name: "filter" + schema: + type: "string" + - description: "The 1-based index of the first result in the current set of\ + \ list results." + in: "query" + name: "startIndex" + schema: + format: "int32" + type: "integer" + - description: "The number of resources returned in a list response page. The\ + \ value by default is 100." + in: "query" + name: "count" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/FilterUsersResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Incorrect syntax in the request. See the error message for\ + \ details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of all active users" + tags: + - "Users" + post: + description: "The endpoint creates a new user in ODM or updates the existing\ + \ user. A user can be updated by this endpoint if the user has the same login\ + \ as in the request body. The \"Manage organization\" permission is required.\ + \ The endpoint does not allow to specify the user's password and user permissions,\ + \ these parameters can be set in the web application by a user with the \"\ + Manage organization\" permission.\n Only one email can be specified." + operationId: "createUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/User" + required: true + responses: + "201": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "The operation is successful. The response body contains the\ + \ representation of the newly created or updated user." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "409": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, data conflict. See the error\ + \ message for details." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Add a new user" + tags: + - "Users" + x-codegen-request-body-name: "body" + /api/v1/scim/Users/{id}: + delete: + operationId: "deleteUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "The user has been successfully deactivated. No data is returned." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied user ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Deactivate a user" + tags: + - "Users" + get: + description: "The endpoint returns an active user by id, where id is internal\ + \ user id in ODM. The \"Manage organization\" permission is required." + operationId: "getUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied user ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no available users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a user by id" + tags: + - "Users" + patch: + description: "The endpoint updates one or several attributes of a specific user,\ + \ where id is internal user id in ODM.\n\n Supported operators in the request\ + \ body: replace, add, remove. For details of the syntax of using these operators,\ + \ we recommend that you refer to the SCIM 2.0 specification.\n\n The list\ + \ of user attributes that can be edited: userName, externalId, displayName,\ + \ active. If the user tries to edit other attributes, e.g. id, an error is\ + \ returned. If the user tries to edit attributes that are not supported in\ + \ the ODM user scheme, e.g. name name.familyName, this attribute is ignored.\ + \ If the request body includes only attributes that are not supported by ODM,\ + \ the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number\ + \ of operations, is treated as atomic. If a single operation encounters an\ + \ error condition, the original user attributes are restored, and a failure\ + \ status is returned.\n\n It is possible to update attributes of the deactivated\ + \ users.\n\n The endpoint requires the \"Manage organization\" permission." + operationId: "patchUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/UserPatch" + required: true + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "User is successfully updated. The response body contains the\ + \ representation of the updated user." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be updated, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Update a user" + tags: + - "Users" + x-codegen-request-body-name: "body" + /api/v1/as-curator/studies: + get: + description: "Retrieve study metadata objects by searching/listing study metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n * pageLimit`\ + \ until the `resultsExhausted` response field is true.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all study objects." + operationId: "searchStudiesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study objects via a full-text query over all study\ + \ metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries\ + \ matching dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for study metadata objects" + tags: + - "Study SPoT as Curator" + /api/v1/as-curator/studies/{id}: + get: + operationId: "getStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateStudyAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a study object" + tags: + - "Study SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/studies/{id}/versions: + get: + operationId: "getStudyVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Study SPoT as Curator" + /api/v1/as-curator/studies/{id}/versions/{version}: + get: + operationId: "getStudyByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as Curator" + /api/v1/as-user/studies: + get: + description: "Retrieve study metadata objects by searching/listing study metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n * pageLimit`\ + \ until the `resultsExhausted` response field is true.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all study objects." + operationId: "searchStudiesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study objects via a full-text query over all study\ + \ metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries\ + \ matching dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for study metadata objects" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}: + get: + operationId: "getStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}/versions: + get: + operationId: "getStudyVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}/versions/{version}: + get: + operationId: "getStudyByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as User" + /api/v1/tasks/publish-versions: + post: + description: "This endpoint publishes all information from drafts and creates\ + \ new metadata versions for each study/associated objects with unpublished\ + \ changes. Only curators with the ACCESS_ALL_DATA permission can use this\ + \ method." + operationId: "publishAllStudies" + parameters: + - description: "Supply text to name this version. If not supplied the version\ + \ name is set to “Auto-published by API call”" + in: "query" + name: "versionMessage" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Forbidden" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Asynchronous task that publishes all pending versions across all studies\ + \ in the instance." + tags: + - "Tasks API" + /api/v1/tasks/{id}: + get: + description: "Supply the accession (id) of an ODM task to retrieve metadata\ + \ about that task." + operationId: "getTaskInfo" + parameters: + - description: "Accession of the task." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve information about any ODM task." + tags: + - "Tasks API" + /api/v1/as-curator/variants: + get: + description: "Retrieve all variant data and metadata objects that match a query.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getAllVariantsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify a chromosome interval to find genes between these positions.\ + \ E.g. `2:233364596-233385916`. Multiple intervals can be provided as a\ + \ list." + in: "query" + name: "variantRegion" + schema: + items: + type: "string" + example: "2:233364596-233385916" + type: "array" + style: "form" + - description: "Specify the name of the reference gene associated with a specific\ + \ location in the reference genome which corresponds to the VCF file (variant\ + \ group) from which the variant information is derived. By providing the\ + \ gene name, such as `TP53`, variants located within the same genomic region\ + \ as the specified gene will be retrieved. Multiple genes can be provided\ + \ as a list." + in: "query" + name: "variantFeature" + schema: + items: + type: "string" + example: "ENSG00000227232" + type: "array" + style: "form" + - description: "One or more specific variation IDs can be specified. E.g. `rs838705`" + in: "query" + name: "variantId" + schema: + items: + type: "string" + example: "rs334" + type: "array" + style: "form" + - description: "The parameter allows to retrieve gene variants based on the\ + \ filters defined in the vcf file. If not specified, all variants are returned.\n\ + \n 1. pass - return gene variants which passed all filters\n 2. noPass\ + \ - return gene variants which failed one or more filters" + in: "query" + name: "variantFilter" + schema: + enum: + - "pass" + - "noPass" + type: "string" + - description: "Filter by vcf `INFO` fields. E.g. to filter all variants annotated\ + \ in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants\ + \ having the key from the search results.\nProvide `info.key=value` pair\ + \ to search for an exact match or `info.key!=value` to exclude it from the\ + \ search.\nDue to the limits of precision in floating point numbers, we\ + \ use a small range of 0.0000001 to identify close matches.\nThis means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries.\nCombine multiple filters for `INFO`\ + \ fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses" + in: "query" + name: "variantInfo" + schema: + type: "string" + - description: "Autogenerated numeric ID that corresponds to a column and is\ + \ used to link data from the same run to a sample. Multiple values can be\ + \ provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample is\ + \ related. Multiple values can be provided as a list to retrieve data from\ + \ multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantResponse" + description: "Retrieved variant data." + "400": + content: {} + description: "Variant data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple variant data and metadata objects" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To return all results iterate through pages\ + \ using pageOffset values of `n*pageLimit` until the `resultsExhausted` response\ + \ field is true.\n\n## List operation\n\nThis endpoint can be called with\ + \ no `query` parameter. Doing so returns a list of all data objects." + operationId: "searchGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group/by/run/{id}: + get: + operationId: "getVariantGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group/{id}: + get: + operationId: "getVariantGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant group by ID (groupId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchVariantRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}: + get: + operationId: "getVariantAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by ID (itemId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}/versions: + get: + operationId: "getVariantVersionsAsCurator" + parameters: + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of variant object versions by run ID (runId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}/versions/{version}: + get: + operationId: "getVariantByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the variant object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by run ID and its version" + tags: + - "Variant SPoT as Curator" + /api/v1/as-user/variants: + get: + description: "Retrieve all variant data and metadata objects that match a query.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getAllVariantsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify a chromosome interval to find genes between these positions.\ + \ E.g. `2:233364596-233385916`. Multiple intervals can be provided as a\ + \ list." + in: "query" + name: "variantRegion" + schema: + items: + type: "string" + example: "2:233364596-233385916" + type: "array" + style: "form" + - description: "Specify the name of the reference gene associated with a specific\ + \ location in the reference genome which corresponds to the VCF file (variant\ + \ group) from which the variant information is derived. By providing the\ + \ gene name, such as `TP53`, variants located within the same genomic region\ + \ as the specified gene will be retrieved. Multiple genes can be provided\ + \ as a list." + in: "query" + name: "variantFeature" + schema: + items: + type: "string" + example: "ENSG00000227232" + type: "array" + style: "form" + - description: "One or more specific variation IDs can be specified. E.g. `rs838705`" + in: "query" + name: "variantId" + schema: + items: + type: "string" + example: "rs334" + type: "array" + style: "form" + - description: "The parameter allows to retrieve gene variants based on the\ + \ filters defined in the vcf file. If not specified, all variants are returned.\n\ + \n 1. pass - return gene variants which passed all filters\n 2. noPass\ + \ - return gene variants which failed one or more filters" + in: "query" + name: "variantFilter" + schema: + enum: + - "pass" + - "noPass" + type: "string" + - description: "Filter by vcf `INFO` fields. E.g. to filter all variants annotated\ + \ in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants\ + \ having the key from the search results.\nProvide `info.key=value` pair\ + \ to search for an exact match or `info.key!=value` to exclude it from the\ + \ search.\nDue to the limits of precision in floating point numbers, we\ + \ use a small range of 0.0000001 to identify close matches.\nThis means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries.\nCombine multiple filters for `INFO`\ + \ fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses" + in: "query" + name: "variantInfo" + schema: + type: "string" + - description: "Autogenerated numeric ID that corresponds to a column and is\ + \ used to link data from the same run to a sample. Multiple values can be\ + \ provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample is\ + \ related. Multiple values can be provided as a list to retrieve data from\ + \ multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantResponse" + description: "Retrieved variant data." + "400": + content: {} + description: "Variant data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple variant data and metadata objects" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To return all results iterate through pages\ + \ using pageOffset values of `n*pageLimit` until the `resultsExhausted` response\ + \ field is true.\n\n## List operation\n\nThis endpoint can be called with\ + \ no `query` parameter. Doing so returns a list of all data objects." + operationId: "searchVariantGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group/by/run/{id}: + get: + operationId: "getVariantGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group/{id}: + get: + operationId: "getVariantGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant group by ID (groupId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchVariantRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}: + get: + operationId: "getVariantAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by ID (itemId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}/versions: + get: + operationId: "getVariantVersionsAsUser" + parameters: + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of variant object versions by run ID (runId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}/versions/{version}: + get: + operationId: "getVariantByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the variant object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by run ID and its version" + tags: + - "Variant SPoT as User" +components: + schemas: + Cell: + $ref: "./schemas/cell/Cell.yaml" + CellListResponse: + $ref: "./schemas/cell/CellListResponse.yaml" + CommitInfo: + $ref: "./schemas/common/CommitInfo.yaml" + ExpressionItem: + $ref: "./schemas/expression/ExpressionItem.yaml" + ExpressionResponse: + $ref: "./schemas/expression/ExpressionResponse.yaml" + IntegrationHelper: + $ref: "./schemas/common/IntegrationHelper.yaml" + ListResponse: + $ref: "./schemas/common/ListResponse.yaml" + MetaResponse: + $ref: "./schemas/common/MetaResponse.yaml" + MetadataContent: + $ref: "./schemas/common/MetadataContent.yaml" + MetadataWithId: + $ref: "./schemas/common/MetadataWithId.yaml" + PaginationInfo: + $ref: "./schemas/common/PaginationInfo.yaml" + RunFilter: + $ref: "./schemas/common/RunFilter.yaml" + RunsResponse: + $ref: "./schemas/common/RunsResponse.yaml" + ResponseFormat: + $ref: "./schemas/common/ResponseFormat.yaml" + SignalRun: + $ref: "./schemas/common/SignalRun.yaml" + AFile: + $ref: "./schemas/afile/AFile.yaml" + FlowCytometryItem: + $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" + FlowCytometryResponse: + $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + AttributeInvalidValue: + $ref: "./schemas/integration/AttributeInvalidValue.yaml" + AttributeValidationSummary: + $ref: "./schemas/integration/AttributeValidationSummary.yaml" + BatchOfIds: + $ref: "./schemas/integration/BatchOfIds.yaml" + DataItem: + $ref: "./schemas/integration/DataItem.yaml" + DataPresentation: + $ref: "./schemas/integration/DataPresentation.yaml" + GroupValidationSummary: + $ref: "./schemas/integration/GroupValidationSummary.yaml" + IMetadata: + $ref: "./schemas/integration/IMetadata.yaml" + Library: + $ref: "./schemas/library/Library.yaml" + Link: + $ref: "./schemas/integration/Link.yaml" + MetadataPresentation: + $ref: "./schemas/integration/MetadataPresentation.yaml" + OmicsResponse: + $ref: "./schemas/integration/OmicsResponse.yaml" + OmicsResponseDataPresentation: + $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" + OmicsResponseMetadataPresentation: + $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + OmicsResponseMetadataWithId: + $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" + Preparation: + $ref: "./schemas/preparation/Preparation.yaml" + Relationships: + $ref: "./schemas/integration/Relationships.yaml" + SourceTypePair: + $ref: "./schemas/integration/SourceTypePair.yaml" + StreamingOutput: + $ref: "./schemas/integration/StreamingOutput.yaml" + Study: + $ref: "./schemas/study/Study.yaml" + StudyValidationSummary: + $ref: "./schemas/integration/StudyValidationSummary.yaml" + TaskInfo: + $ref: "./schemas/tasks/TaskInfo.yaml" + ValidationError: + $ref: "./schemas/integration/ValidationError.yaml" + SearchStudyRequest: + $ref: "./schemas/integration/SearchStudyRequest.yaml" + AppliedFilter: + $ref: "./schemas/integration/AppliedFilter.yaml" + PageRequest: + $ref: "./schemas/integration/PageRequest.yaml" + FindObjectsResponse: + $ref: "./schemas/integration/FindObjectsResponse.yaml" + ObjectsPage: + $ref: "./schemas/integration/ObjectsPage.yaml" + StudySearchInfo: + $ref: "./schemas/integration/StudySearchInfo.yaml" + MetainfoKeyForSummary: + $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" + FilterOptionGroup: + $ref: "./schemas/integration/FilterOptionGroup.yaml" + FilterOption: + $ref: "./schemas/integration/FilterOption.yaml" + DERequest: + $ref: "./schemas/cell/DERequest.yaml" + DEResponse: + $ref: "./schemas/cell/DEResponse.yaml" + GSRequest: + $ref: "./schemas/cell/GSRequest.yaml" + GSResponse: + $ref: "./schemas/cell/GSResponse.yaml" + CRRequest: + $ref: "./schemas/cell/CRRequest.yaml" + CRResponse: + $ref: "./schemas/cell/CRResponse.yaml" + ExceptionTypeAndMessage: + $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" + ImportCellsRequest: + $ref: "./schemas/job/ImportCellsRequest.yaml" + ImportCellsFromMultipartRequest: + $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" + ImportMetadataRequest: + $ref: "./schemas/job/ImportMetadataRequest.yaml" + ImportMetadataFromMultipartRequest: + $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + ImportSignalRunRequest: + $ref: "./schemas/job/ImportSignalRunRequest.yaml" + ImportSignalRunFomMultipartRequest: + $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + ImportExpressionSignalRunRequest: + $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" + ImportExpressionSignalRunFromMultipartRequest: + $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + ImportAFileRequest: + $ref: "./schemas/job/ImportAFileRequest.yaml" + ImportAFileFromMultipartRequest: + $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" + Info: + $ref: "./schemas/job/Info.yaml" + JobRuntimeError: + $ref: "./schemas/job/JobRuntimeError.yaml" + Output: + $ref: "./schemas/job/Output.yaml" + DetachedCollection: + $ref: "./schemas/manage-data/DetachedCollection.yaml" + DetachedObject: + $ref: "./schemas/manage-data/DetachedObject.yaml" + ManagedObject: + $ref: "./schemas/manage-data/ManagedObject.yaml" + XrefSetCreateRequest: + $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" + XrefSetCreateResponse: + $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" + XrefSetMetadata: + $ref: "./schemas/reference-data/XrefSetMetadata.yaml" + XrefSetSearchResult: + $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" + XrefSetSearchResultEntry: + $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + UploadRGRequest: + $ref: "./schemas/reference-genome/UploadRGRequest.yaml" + AccessionResponse: + $ref: "./schemas/common/AccessionResponse.yaml" + RGItem: + $ref: "./schemas/reference-genome/RGItem.yaml" + Sample: + $ref: "./schemas/sample/Sample.yaml" + Group: + $ref: "./schemas/scim/Group.yaml" + Member: + $ref: "./schemas/scim/Member.yaml" + GroupPatch: + $ref: "./schemas/scim/GroupPatch.yaml" + PatchOperation: + $ref: "./schemas/scim/PatchOperation.yaml" + FilterGroupsResponse: + $ref: "./schemas/scim/FilterGroupsResponse.yaml" + GroupResponse: + $ref: "./schemas/scim/GroupResponse.yaml" + Meta: + $ref: "./schemas/scim/Meta.yaml" + SCIMErrorResponse: + $ref: "./schemas/scim/SCIMErrorResponse.yaml" + BaseErrorResponse: + $ref: "./schemas/scim/BaseErrorResponse.yaml" + ErrorMessage: + $ref: "./schemas/scim/ErrorMessage.yaml" + User: + $ref: "./schemas/scim/User.yaml" + Email: + $ref: "./schemas/scim/Email.yaml" + UserPatch: + $ref: "./schemas/scim/UserPatch.yaml" + FilterUsersResponse: + $ref: "./schemas/scim/FilterUsersResponse.yaml" + UserResponse: + $ref: "./schemas/scim/UserResponse.yaml" + VariantMetadataWithId: + $ref: "./schemas/variant/VariantMetadataWithId.yaml" + VariantItem: + $ref: "./schemas/variant/VariantItem.yaml" + VariantResponse: + $ref: "./schemas/variant/VariantResponse.yaml" + securitySchemes: + Access-token: + in: "header" + name: "Authorization" + type: "apiKey" + Genestack-API-Token: + in: "header" + name: "Genestack-API-Token" + type: "apiKey" + parameters: + AllowDuplicates: + description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to load\ + \ this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" diff --git a/openapi/v1/odmApi.json b/openapi/v1/odmApi.json new file mode 100644 index 00000000..ef5ec235 --- /dev/null +++ b/openapi/v1/odmApi.json @@ -0,0 +1,21233 @@ +{ + "openapi" : "3.1.0", + "info" : { + "description" : "This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata.\n\nBefore carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software.\n\nTo try out calls in this swagger page:\n\n1. Click the 'Authorize' button below to enter your API token\n2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button\n3. Enter parameter values that you wish to try\n4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears\n\n\n The server response will be in the section that follows.", + "title" : "ODM API", + "version" : "default-released" + }, + "tags" : [ { + "name" : "Cells as Curator" + }, { + "name" : "Cells as User" + }, { + "name" : "Expression SPoT as Curator" + }, { + "name" : "Expression SPoT as User" + }, { + "name" : "Files as Curator" + }, { + "name" : "Files as User" + }, { + "name" : "Flow Cytometry SPoT as Curator" + }, { + "name" : "Flow Cytometry SPoT as User" + }, { + "name" : "Cell integration as Curator" + }, { + "name" : "Expression integration as Curator" + }, { + "name" : "Files integration as Curator" + }, { + "name" : "Flow Cytometry (FACS) integration as Curator" + }, { + "name" : "Library integration as Curator" + }, { + "name" : "Linkage as Curator" + }, { + "name" : "Metadata versioning as Curator" + }, { + "name" : "Omics queries as Curator" + }, { + "name" : "Preparation integration as Curator" + }, { + "name" : "Sample integration as Curator" + }, { + "name" : "Study integration as Curator" + }, { + "name" : "Validation summary as Curator" + }, { + "name" : "Variant integration as Curator" + }, { + "name" : "Expression integration as User" + }, { + "name" : "Files integration as User" + }, { + "name" : "Flow Cytometry (FACS) integration as User" + }, { + "name" : "Library integration as User" + }, { + "name" : "Linkage as User" + }, { + "name" : "Omics queries as User" + }, { + "name" : "Preparation integration as User" + }, { + "name" : "Sample integration as User" + }, { + "name" : "Study integration as User" + }, { + "name" : "Variant integration as User" + }, { + "name" : "Data import jobs" + }, { + "name" : "Data import via direct file upload" + }, { + "name" : "Job operations" + }, { + "name" : "Library SPoT as Curator" + }, { + "name" : "Library SPoT as User" + }, { + "name" : "Manage Data" + }, { + "name" : "Preparation SPoT as Curator" + }, { + "name" : "Preparation SPoT as User" + }, { + "name" : "Xrefset queries" + }, { + "name" : "Reference genome" + }, { + "name" : "Sample SPoT as Curator" + }, { + "name" : "Sample SPoT as User" + }, { + "name" : "Groups" + }, { + "name" : "Users" + }, { + "name" : "Study SPoT as Curator" + }, { + "name" : "Study SPoT as User" + }, { + "name" : "Tasks API" + }, { + "name" : "Variant SPoT as Curator" + }, { + "name" : "Variant SPoT as User" + } ], + "paths" : { + "/api/v1/as-curator/cells/{id}" : { + "get" : { + "operationId" : "getCellByIdAsCurator", + "parameters" : [ { + "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Cell" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided ID could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a cell by ID", + "tags" : [ "Cells as Curator" ] + } + }, + "/api/v1/as-curator/cells/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", + "operationId" : "getCellsByGroupAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the cell group.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CellListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Cell data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cells from a given group", + "tags" : [ "Cells as Curator" ] + } + }, + "/api/v1/as-user/cells/{id}" : { + "get" : { + "operationId" : "getCellByIdAsUser", + "parameters" : [ { + "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Cell" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided ID could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a cell by ID", + "tags" : [ "Cells as User" ] + } + }, + "/api/v1/as-user/cells/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", + "operationId" : "getCellsByGroupAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the cell group.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CellListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Cell data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cells from a given group", + "tags" : [ "Cells as User" ] + } + }, + "/api/v1/as-curator/expressions" : { + "get" : { + "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getExpressionDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minExpressionLevel", + "schema" : { + "format" : "double", + "type" : "number" + } + }, { + "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionResponse" + } + } + }, + "description" : "Retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Expression data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple expression data and metadata objects", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchExpressionGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group/by/run/{id}" : { + "get" : { + "operationId" : "getExpressionGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group/{id}" : { + "get" : { + "operationId" : "getExpressionGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression group by ID (groupId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchExpressionRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/{id}" : { + "get" : { + "operationId" : "getExpressionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by ID (itemId)", + "tags" : [ "Expression SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateExpressionRunAsCurator", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update metadata object by expression object run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/expressions/{id}/versions" : { + "get" : { + "operationId" : "getExpressionVersionsAsCurator", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of expression object versions by run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/{id}/versions/{version}" : { + "get" : { + "operationId" : "getExpressionByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the expression object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by run ID and its version", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-user/expressions" : { + "get" : { + "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getExpressionDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minExpressionLevel", + "schema" : { + "format" : "double", + "type" : "number" + } + }, { + "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionResponse" + } + } + }, + "description" : "Retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Expression data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple expression data and metadata objects", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchExpressionGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group/by/run/{id}" : { + "get" : { + "operationId" : "getExpressionGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group/{id}" : { + "get" : { + "operationId" : "getExpressionGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression group by ID (groupId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchExpressionRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}" : { + "get" : { + "operationId" : "getExpressionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by ID (itemId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}/versions" : { + "get" : { + "operationId" : "getExpressionVersionsAsUser", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of expression object versions by run ID (runId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}/versions/{version}" : { + "get" : { + "operationId" : "getExpressionByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by run ID and its version", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-curator/files/{id}/download" : { + "head" : { + "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", + "operationId" : "headFileAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "File exists. Additional metadata is provided in the response headers." + }, + "400" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "tags" : [ "Files as Curator" ] + }, + "get" : { + "description" : "Download a file by its accession.\n", + "operationId" : "getFileAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "Range", + "in" : "header", + "required" : false, + "schema" : { + "type" : "string", + "example" : "bytes=0-" + }, + "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" + } ], + "responses" : { + "200" : { + "description" : "File downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "206" : { + "description" : "Partial content downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "File cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a file by ID (accession)", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-curator/files/{id}" : { + "get" : { + "operationId" : "getFileMetadataByIdAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AFile" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by ID (accession)", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-curator/files" : { + "get" : { + "operationId" : "getFilesMetadataAsCurator", + "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", + "parameters" : [ { + "in" : "query", + "name" : "filter", + "description" : "Filter by files metadata (key-value metadata pair(s)).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for files via a full-text query over all file metadata.", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "includeContents", + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by its fields", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-user/files/{id}/download" : { + "head" : { + "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", + "operationId" : "headFileAsUser", + "summary" : "Check if a file exists by ID (accession).", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "File exists. Additional metadata is provided in the response headers." + }, + "400" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "tags" : [ "Files as User" ] + }, + "get" : { + "description" : "Download a file by its accession.\n", + "operationId" : "getFileAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "Range", + "in" : "header", + "required" : false, + "schema" : { + "type" : "string", + "example" : "bytes=0-" + }, + "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" + } ], + "responses" : { + "200" : { + "description" : "File downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "206" : { + "description" : "Partial content downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "File cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a file by ID (accession)", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-user/files/{id}" : { + "get" : { + "operationId" : "getFileMetadataByIdAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AFile" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by ID (accession)", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-user/files" : { + "get" : { + "operationId" : "getFilesMetadataAsUser", + "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", + "parameters" : [ { + "in" : "query", + "name" : "filter", + "description" : "Filter by files metadata (key-value metadata pair(s)).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for files via a full-text query over all file metadata.", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "includeContents", + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by its fields", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-curator/flow-cytometries" : { + "get" : { + "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getFlowCytometryDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", + "in" : "query", + "name" : "readoutType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", + "in" : "query", + "name" : "population", + "schema" : { + "type" : "string" + } + }, { + "description" : "Marker value. E.g.: `PD1`, `BV786`", + "in" : "query", + "name" : "marker", + "schema" : { + "type" : "string" + } + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minValue", + "schema" : { + "type" : "number" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryResponse" + } + } + }, + "description" : "Retrieved Flow Cytometry data." + }, + "400" : { + "content" : { }, + "description" : "Flow Cytometry data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple flow cytometry data and metadata objects", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchFlowCytometryGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group/by/run/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchFlowCytometryRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/{id}" : { + "get" : { + "operationId" : "getFlowCytometryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateFlowCytometryAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update object metadata", + "tags" : [ "Flow Cytometry SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/flow-cytometries/{id}/versions" : { + "get" : { + "operationId" : "getFlowCytometryVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getFlowCytometryByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-user/flow-cytometries" : { + "get" : { + "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getFlowCytometryDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", + "in" : "query", + "name" : "readoutType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", + "in" : "query", + "name" : "population", + "schema" : { + "type" : "string" + } + }, { + "description" : "Marker value. E.g.: `PD1`, `BV786`", + "in" : "query", + "name" : "marker", + "schema" : { + "type" : "string" + } + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minValue", + "schema" : { + "type" : "number" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryResponse" + } + } + }, + "description" : "Retrieved Flow Cytometry data." + }, + "400" : { + "content" : { }, + "description" : "Flow Cytometry data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple flow cytometry data and metadata objects", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchFlowCytometryGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group/by/run/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchFlowCytometryRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}" : { + "get" : { + "operationId" : "getFlowCytometryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}/versions" : { + "get" : { + "operationId" : "getFlowCytometryVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getFlowCytometryByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-curator/data-types" : { + "get" : { + "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", + "operationId" : "getDataTypesAsCurator", + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Lists all available data types.", + "tags" : [ "Linkage as Curator" ] + } + }, + "/api/v1/as-curator/data-types/links" : { + "get" : { + "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", + "operationId" : "getDataTypesLinksAsCurator", + "parameters" : [ { + "description" : "Return only links with the specified data type.", + "in" : "query", + "name" : "type", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/SourceTypePair" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List all possible links between data types that match the specified criteria.", + "tags" : [ "Linkage as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/library/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByLibraryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related library ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/preparation/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByPreparation", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getExpressionGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}" : { + "post" : { + "description" : "Create a link between a group of cell expression objects and a group of cell metadata.\n\nA cell expression object can be linked to one cell metadata object only.", + "operationId" : "createExpressionGroupCellGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell expression group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the cell metadata group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) cell links were created." + }, + "204" : { + "content" : { }, + "description" : "All links were created." + }, + "400" : { + "content" : { }, + "description" : "Incorrect Cell or Expression group provided, see error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of cell expression objects and a group of cell metadata.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of library objects", + "operationId" : "deleteExpressionGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of library objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of library objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) sample links created." + }, + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Library group, signal group or libraries to link not found" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of library objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of preparation objects", + "operationId" : "deleteExpressionGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of preparation objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of preparation objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) sample links created." + }, + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Preparation group, signal group or preparations to link not found" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of preparation objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of sample objects", + "operationId" : "deleteExpressionGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of sample objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of sample objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createExpressionGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "400" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of sample objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToLibraryPairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToPreparationPairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a library", + "operationId" : "deleteExpressionLibraryLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a library", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a library.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionLibraryLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a library", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a preparation", + "operationId" : "deleteExpressionPreparationLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a preparation", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a preparation.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionPreparationLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a preparation", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a sample", + "operationId" : "deleteExpressionSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a sample", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a sample.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a sample", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getFlowCytometryGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of flow-cytometry objects and a group of sample objects", + "operationId" : "deleteFlowCytometryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of flow-cytometry objects and a group of sample objects", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of flow-cytometry objects and a group of sample objects.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.\n\nUsers can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createFlowCytometryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of flow-cytometry objects and a group of sample objects", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between a flow-cytometry object and a sample", + "operationId" : "deleteFlowCytometrySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level data block", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a flow-cytometry object and a sample", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a flow-cytometry object and a sample.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.", + "operationId" : "createFlowCytometrySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level data block", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a flow-cytometry object and a sample", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/libraries/by/samples" : { + "get" : { + "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibrariesBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related samples", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/by/sample/{id}" : { + "get" : { + "operationId" : "getLibraryBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related sample ID (accession)", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/group/by/study/{id}" : { + "get" : { + "operationId" : "getLibraryGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete links between samples and libraries related to the specified group", + "operationId" : "deleteLibraryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete links between samples and libraries related to the specified group", + "tags" : [ "Library integration as Curator" ] + }, + "post" : { + "description" : "Create links between samples and libraries.\n\nLibrary objects of the same group can only be linked to objects of the same study.", + "operationId" : "createLibraryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between samples and libraries", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibraryLinksToSamplesAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete a link between a library and a sample", + "operationId" : "deleteLibrarySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a link between a library and a sample", + "tags" : [ "Library integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a library and a sample.\n\nLibrary objects of the same group can only be linked to objects of the same study.", + "operationId" : "createLibrarySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a library and a sample", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/by/sample/{id}" : { + "get" : { + "operationId" : "getPreparationBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/group/by/study/{id}" : { + "get" : { + "operationId" : "getPreparationGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete links between samples and preparations related to the specified group", + "operationId" : "deletePreparationGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete links between samples and preparations related to the specified group", + "tags" : [ "Preparation integration as Curator" ] + }, + "post" : { + "description" : "Create links between samples and preparations.\n\nPreparation objects of the same group can only be linked to objects of the same study.", + "operationId" : "createPreparationGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between samples and preparations", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationLinksToSamplesAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete a link between a preparation and a sample", + "operationId" : "deletePreparationSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a link between a preparation and a sample", + "tags" : [ "Preparation integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a preparation and a sample.\n\nPreparation objects of the same group can only be linked to objects of the same study.", + "operationId" : "createPreparationSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a preparation and a sample", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparations/by/samples" : { + "get" : { + "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationsBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related samples", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of sample objects and a study", + "operationId" : "deleteSampleGroupStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of sample objects and a study", + "tags" : [ "Sample integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of sample objects and a study.\n\nSample objects of the same group can only be linked to the same study.", + "operationId" : "createSampleGroupStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of sample objects and a study", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}" : { + "delete" : { + "description" : "Delete link between a sample and a study", + "operationId" : "deleteSampleStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a sample and a study", + "tags" : [ "Sample integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a sample and a study.\n\nSample objects of the same group can only be linked to the same study.", + "operationId" : "createSampleStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a sample and a study", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/libraries" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related libraries", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/preparations" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related preparations", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/study/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related study ID (accession)", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/libraries" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related libraries", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/preparations" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related preparations", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/samples" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related samples", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/study/by/sample/{id}" : { + "get" : { + "operationId" : "getStudyBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying sample ID (accession)", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/files" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByFilesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related attachment files", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/study/by/file/{id}" : { + "get" : { + "operationId" : "getStudyByFileAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying attachment file ID (accession)", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getVariantGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of variant objects and a group of sample objects", + "operationId" : "deleteVariantGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of variant objects and a group of sample objects", + "tags" : [ "Variant integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of variant objects and a group of sample objects.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createVariantGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of variant objects and a group of sample objects", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between a variant object and a sample", + "operationId" : "deleteVariantSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a variant object and a sample", + "tags" : [ "Variant integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a variant object and a sample.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.", + "operationId" : "createVariantSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a variant object and a sample", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/fulltext/search/studies" : { + "post" : { + "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", + "operationId" : "searchStudiesByFilterAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SearchStudyRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FindObjectsResponse" + } + } + }, + "description" : "The request was successful. Retrieved studies and filters." + }, + "400" : { + "content" : { }, + "description" : "Invalid request body" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Find and retrieve studies by full-text or facet query", + "tags" : [ "Study integration as Curator" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-curator/links" : { + "delete" : { + "description" : "This method should be used in case you want to delete the links of an object. Please, keep in mind that deleting a link between Study and Sample will not delete a link between corresponding Sample and it’s signal.", + "operationId" : "deleteLinkAsCurator", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link has been successfully deleted." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No links were found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Deletes existing links matching the specified criteria.", + "tags" : [ "Linkage as Curator" ] + }, + "get" : { + "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", + "operationId" : "getLinksByParamsAsCurator", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Param says to skip that many links before beginning to return links.", + "in" : "query", + "name" : "offset", + "schema" : { + "default" : 0, + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Param says to limit the count of returned links.", + "in" : "query", + "name" : "limit", + "schema" : { + "default" : 1000, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links matching the specified criteria.", + "tags" : [ "Linkage as Curator" ] + }, + "post" : { + "description" : "This method should be used only in case you need to create links between 2 objects. Links are created both ways (e.g. when linking Object A to Object B it can be done both ways, by linking firstType to secondType and vice versa).", + "operationId" : "saveLinksAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Link" + }, + "type" : "array" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { }, + "description" : "Links were updated or not modified." + }, + "201" : { + "content" : { }, + "description" : "At least one new link has been created.Some other links might have been updated or not modified." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "409" : { + "content" : { }, + "description" : "Link cannot be created due to conflict with existing link" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Creates new links between objects.", + "tags" : [ "Linkage as Curator" ], + "x-codegen-request-body-name" : "links" + } + }, + "/api/v1/as-curator/links/get-batch" : { + "post" : { + "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", + "operationId" : "getLinksByIdsAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BatchOfIds" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", + "tags" : [ "Linkage as Curator" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-curator/omics/cells" : { + "get" : { + "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsAsCurator", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve Cell objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/cells/expression/data" : { + "get" : { + "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsExpressionDataAsCurator", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cell expression objects by searching across multiple metadata types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/data" : { + "get" : { + "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedExpressionDataAsCurator", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Accession of the expression group object (GCT)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", + "in" : "query", + "name" : "roundDigits", + "schema" : { + "default" : 4, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/csv" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given tabular file", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/flow-cytometry/data" : { + "get" : { + "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/flow-cytometry/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchSamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/data" : { + "get" : { + "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique identifier (accession) of Reference Genome object.", + "in" : "query", + "name" : "referenceGenomeId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedVariantDataAsCurator", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Accession of the variant group object (VCF)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Variant data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given VCF file", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/cell-ratio" : { + "post" : { + "operationId" : "cellRatioAsCurator", + "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRResponse" + } + } + }, + "description" : "Cell ratio result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/differential-expression" : { + "post" : { + "operationId" : "differentialExpressionAsCurator", + "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DERequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DEResponse" + } + } + }, + "description" : "Differential expression result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/gene-summary" : { + "post" : { + "operationId" : "geneSummaryAsCurator", + "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "required" : true, + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSRequest" + } + } + } + }, + "responses" : { + "200" : { + "description" : "Gene summary result", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSResponse" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/integration/studies/{id}/tasks/publish-versions" : { + "post" : { + "description" : "This endpoint publishes information from drafts and creates new metadata versions for the specified study and all associated objects. The version name is set to “Auto-published by API call”. Only curators with access to the specified studies can use this method.", + "operationId" : "publishStudyByAccessionAsCurator", + "parameters" : [ { + "description" : "Supply the accession of the study to be published", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", + "in" : "query", + "name" : "versionMessage", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Forbidden" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Asynchronous task that publishes all pending versions for a single study.", + "tags" : [ "Metadata versioning as Curator" ] + } + }, + "/api/v1/as-curator/integration/studies/{id}/validation-summary" : { + "get" : { + "operationId" : "getStudyValidationSummary", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/StudyValidationSummary" + } + } + }, + "description" : "Study validation result." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve validation summary by querying study ID (accession)", + "tags" : [ "Validation summary as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/files/by/study/{id}" : { + "get" : { + "operationId" : "getFilesByStudyAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by study ID", + "tags" : [ "Files integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and samples.\n\nCell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study.", + "operationId" : "createCellGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to samples." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to samples." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or samples to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and samples", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and libraries.\n\nCell objects of the same group can be linked to library objects from multiple library groups, but only within the same study.", + "operationId" : "createCellGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to libraries." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to libraries." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or libraries to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and libraries", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and preparations.\n\nCell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study.", + "operationId" : "createCellGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to preparations." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to preparations." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or preparations to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and preparations", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-user/data-types" : { + "get" : { + "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", + "operationId" : "getDataTypesAsUser", + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Lists all available data types.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/data-types/links" : { + "get" : { + "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", + "operationId" : "getDataTypesLinksAsUser", + "parameters" : [ { + "description" : "Return only links with the specified data type.", + "in" : "query", + "name" : "type", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/SourceTypePair" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List all possible links between data types that match the specified criteria.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/library/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByLibraryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related library ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/preparation/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByPreparationAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getExpressionGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToLibraryPairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToPreparationPairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getFlowCytometryGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/libraries/by/samples" : { + "get" : { + "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibrariesBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related samples", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/by/sample/{id}" : { + "get" : { + "operationId" : "getLibraryBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related sample ID (accession)", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/group/by/study/{id}" : { + "get" : { + "operationId" : "getLibraryGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibraryLinksToSamplesAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/by/sample/{id}" : { + "get" : { + "operationId" : "getPreparationBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/group/by/study/{id}" : { + "get" : { + "operationId" : "getPreparationGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationLinksToSamplesAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparations/by/samples" : { + "get" : { + "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationsBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related samples", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/libraries" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related libraries", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/preparations" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related preparations", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/study/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related study ID (accession)", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/libraries" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related libraries", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/preparations" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related preparations", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/samples" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related samples", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/study/by/sample/{id}" : { + "get" : { + "operationId" : "getStudyBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying sample ID (accession)", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/files" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByFilesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related attachment files", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/study/by/file/{id}" : { + "get" : { + "operationId" : "getStudyByFileAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying attachment file ID (accession)", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/fulltext/search/studies" : { + "post" : { + "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", + "operationId" : "searchStudiesByFilterAsUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SearchStudyRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FindObjectsResponse" + } + } + }, + "description" : "The request was successful. Retrieved studies and filters." + }, + "400" : { + "content" : { }, + "description" : "Invalid request body" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Find and retrieve studies by full-text or facet query", + "tags" : [ "Study integration as User" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-user/integration/link/variant/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/integration/link/variant/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getVariantGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/links" : { + "get" : { + "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", + "operationId" : "getLinksByParamsAsUser", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Param says to skip that many links before beginning to return links.", + "in" : "query", + "name" : "offset", + "schema" : { + "default" : 0, + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Param says to limit the count of returned links.", + "in" : "query", + "name" : "limit", + "schema" : { + "default" : 1000, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links matching the specified criteria.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/links/get-batch" : { + "post" : { + "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", + "operationId" : "getLinksByIdsAsUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BatchOfIds" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", + "tags" : [ "Linkage as User" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-user/omics/cells" : { + "get" : { + "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsAsUser", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve Cell objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/cells/expression/data" : { + "get" : { + "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsExpressionDataAsUser", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cell expression objects by searching across multiple metadata types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/data" : { + "get" : { + "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n \n\n## Error Handling\n In case of unexpected internal error during data retrieval, the last line of the body will contain an error message, prefixed by the `#` character \n\n", + "operationId" : "omicsSearchStreamedExpressionDataAsUser", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Accession of the expression group object (GCT)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", + "in" : "query", + "name" : "roundDigits", + "schema" : { + "default" : 4, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/csv" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given tabular file", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/flow-cytometry/data" : { + "get" : { + "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/flow-cytometry/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchSamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/data" : { + "get" : { + "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique identifier (accession) of Reference Genome object.", + "in" : "query", + "name" : "referenceGenomeId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedVariantDataAsUser", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Accession of the variant group object (VCF)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Variant data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given VCF file", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/cells/analytics/cell-ratio" : { + "post" : { + "operationId" : "cellRatioAsUser", + "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRResponse" + } + } + }, + "description" : "Cell ratio result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/omics/cells/analytics/differential-expression" : { + "post" : { + "operationId" : "differentialExpressionAsUser", + "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DERequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DEResponse" + } + } + }, + "description" : "Differential expression result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/omics/cells/analytics/gene-summary" : { + "post" : { + "operationId" : "geneSummaryAsUser", + "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "required" : true, + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSRequest" + } + } + } + }, + "responses" : { + "200" : { + "description" : "Gene summary result", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSResponse" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/integration/link/files/by/study/{id}" : { + "get" : { + "operationId" : "getFilesByStudyAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by study ID", + "tags" : [ "Files integration as User" ] + } + }, + "/api/v1/jobs/import/study" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportStudy", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import study metadata from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/samples" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportSamples", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of sample metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/samples/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportSamplesMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of sample metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/libraries" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportLibraries", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + }, + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of library metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/libraries/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportLibrariesMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of library metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/preparations" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportPreparations", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of preparation metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/preparations/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportPreparationsMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of preparation metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/cells" : { + "post" : { + "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", + "operationId" : "startImportCells", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportCellsRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of cell data objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/cells/multipart" : { + "post" : { + "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", + "operationId" : "startImportCellsMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportCellsFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of cell data objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/expression" : { + "post" : { + "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", + "operationId" : "startImportExpression", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportExpressionSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import any tabular data from TSV or GCT files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/expression/multipart" : { + "post" : { + "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", + "operationId" : "startImportExpressionMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import any tabular data from TSV or GCT files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/variant" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", + "operationId" : "startImportVariant", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import variation data and metadata from VCF and TSV files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/variant/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", + "operationId" : "startImportVariantMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import variation data and metadata from VCF and TSV files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/flow-cytometry" : { + "post" : { + "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportFlowCytometry", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import flow-cytometry data and metadata from FACS and TSV files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/flow-cytometry/multipart" : { + "post" : { + "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportFlowCytometryMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/file" : { + "post" : { + "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link.\n* `dataLink` - a link to a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadataLink` - an optional URL of a metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportAFile", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportAFileRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import file as an attachment", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/file/multipart" : { + "post" : { + "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `data` - a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadata` - an optional metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportAFileMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportAFileFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import file as an attachment via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/{jobExecId}/info" : { + "get" : { + "operationId" : "info", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "get information about one particular job execution", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/output" : { + "get" : { + "operationId" : "output", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Output" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "retrieve job output (result)", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/restart" : { + "put" : { + "operationId" : "restart", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "restart stopped (failed) job", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/stop" : { + "put" : { + "operationId" : "stop", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "stop running job", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/as-curator/libraries" : { + "get" : { + "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for library metadata objects", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/by/group/{id}" : { + "get" : { + "operationId" : "getLibrariesByGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve libraries related to the given group", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/{id}" : { + "get" : { + "operationId" : "getLibraryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateLibraryAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a library object", + "tags" : [ "Library SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/libraries/{id}/versions" : { + "get" : { + "operationId" : "getLibraryVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getLibraryByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-user/libraries" : { + "get" : { + "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for library metadata objects", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/by/group/{id}" : { + "get" : { + "operationId" : "getLibrariesByGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve libraries related to the given group", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}" : { + "get" : { + "operationId" : "getLibraryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}/versions" : { + "get" : { + "operationId" : "getLibraryVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getLibraryByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/manage-data/detached-objects" : { + "get" : { + "description" : "Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'.\nStudy is considered as detached object itself in case there are no links to objects at a lower level.\nData with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter.\nThe detached objects are sorted according to their `detachedObjectType` and `genestack:accession`.\nSpecific ordering can be observed in the list of supported detached types found below.\nPagination of the results can be conveniently managed using the `cursor` and `limit` parameters.\n Supported types of detached objects (listed in the order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n\n", + "operationId" : "getDetachedObjects", + "parameters" : [ { + "description" : "Filter by detached object type. Multiple values can be used to filter the data.", + "explode" : true, + "in" : "query", + "name" : "detachedObjectType", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "limit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "This parameter enables retrieval of objects starting from a specific point.\n Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DetachedCollection" + } + } + }, + "description" : "Retrieved detached data." + }, + "400" : { + "content" : { }, + "description" : "Detached data cannot be retrieved due to Bad Request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of detached objects", + "tags" : [ "Manage Data" ] + } + }, + "/api/v1/manage-data/data" : { + "delete" : { + "description" : "The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n * `FILE`\n\n Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules:\n * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group.\n * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group).\n * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM.\n * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups.\n * If you delete `FILE`, the file will be removed from ODM.", + "operationId" : "deleteData", + "parameters" : [ { + "description" : "Accessions files to be deleted.", + "explode" : false, + "in" : "query", + "name" : "accessions", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + } ], + "responses" : { + "202" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/ManagedObject" + }, + "type" : "array" + } + } + }, + "description" : "The deletion of the following files and all linked data has started." + }, + "400" : { + "content" : { }, + "description" : "Deletion could not be performed due to Bad Request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method or the file is not meant to be deleted." + }, + "404" : { + "content" : { }, + "description" : "Some of the provided accessions could not be found in ODM. Deletion will not be preformed. Please review your list and repeat the attempt." + }, + "406" : { + "content" : { }, + "description" : "Some of the provided accessions do not belong to the supported object types. Deletion will not be performed. Please review your list and repeat the attempt." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete objects from ODM", + "tags" : [ "Manage Data" ] + } + }, + "/api/v1/as-curator/preparations" : { + "get" : { + "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for preparation metadata objects", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/by/group/{id}" : { + "get" : { + "operationId" : "getPreparationsByGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparations related to the given group", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/{id}" : { + "get" : { + "operationId" : "getPreparationAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updatePreparationAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a preparation object", + "tags" : [ "Preparation SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/preparations/{id}/versions" : { + "get" : { + "operationId" : "getPreparationVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/{id}/versions/{version}" : { + "get" : { + "operationId" : "getPreparationByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-user/preparations" : { + "get" : { + "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for preparation metadata objects", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/by/group/{id}" : { + "get" : { + "operationId" : "getPreparationsByGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparations related to the given group", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}" : { + "get" : { + "operationId" : "getPreparationAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}/versions" : { + "get" : { + "operationId" : "getPreparationVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}/versions/{version}" : { + "get" : { + "operationId" : "getPreparationByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/xrefsets" : { + "post" : { + "operationId" : "create", + "requestBody" : { + "description" : "Request body for creating a new xrefset.\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetCreateRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetCreateResponse" + } + } + }, + "description" : "successful operation" + }, + "201" : { + "content" : { }, + "description" : "The objects were successfully created. The returned value is a list of created objects." + }, + "400" : { + "content" : { }, + "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to work with the xrefset." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a new xrefset file", + "tags" : [ "Xrefset queries" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/xrefsets/entries" : { + "get" : { + "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", + "operationId" : "searchEntries", + "parameters" : [ { + "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", + "explode" : true, + "in" : "query", + "name" : "sourceId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", + "explode" : true, + "in" : "query", + "name" : "targetId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetSearchResult" + } + } + }, + "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of entries across all xrefsets for given sourceId and targetId", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}" : { + "delete" : { + "operationId" : "deleteFile", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "pattern" : ".*", + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Xrefset file successfully marked for deletion, mappings have been removed" + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to work with the xrefset." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a xrefset with all related data.\nOnly users who uploaded the xrefset are allowed to delete it.", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}/entries" : { + "get" : { + "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n\n", + "operationId" : "searchEntriesWithinFile", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", + "explode" : true, + "in" : "query", + "name" : "sourceId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", + "explode" : true, + "in" : "query", + "name" : "targetId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetSearchResult" + } + } + }, + "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of entries for the given xrefset and given sourceId and targetId", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}/metadata" : { + "get" : { + "operationId" : "getDetailsByAccession", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetMetadata" + } + } + }, + "description" : "Object containing xrefset details, including user submitted metadata and system info" + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve xrefset details", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/reference-genomes" : { + "get" : { + "operationId" : "search_reference_genomes", + "summary" : "List or search for Reference Genome objects", + "tags" : [ "Reference genome" ], + "description" : "Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects.", + "parameters" : [ { + "in" : "query", + "name" : "organism", + "description" : "Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "assembly", + "description" : "Major version (for example, `GRCh38`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "release", + "description" : "Ensembl reference genome minor version (for example, `75` or `109`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + }, + "post" : { + "operationId" : "upload", + "summary" : "Upload reference genome to ODM", + "tags" : [ "Reference genome" ], + "description" : "In order to import reference genome file, please fill in the following fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format.\nNote: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided.\n* `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\nNote: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list.\n* `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html).\n* `release` - Ensembl reference genome minor version (for example, `75` or `109`).\n* `name` - customized reference genome title that is used for linkage variant files.\nBy default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`.\n\nReference genome will be available after initialisation. Please track initialisation task status.", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UploadRGRequest" + } + } + }, + "required" : false + }, + "responses" : { + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccessionResponse" + } + } + }, + "description" : "The object was successfully created." + }, + "400" : { + "content" : { }, + "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/reference-genomes/{id}" : { + "get" : { + "operationId" : "get_reference_genome_by_accession", + "summary" : "Retrieve a single Reference Genome object by ID (accession)", + "tags" : [ "Reference genome" ], + "parameters" : [ { + "in" : "path", + "name" : "id", + "description" : "Unique identifier (Genestack accession) of Reference Genome object.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RGItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchSamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for sample metadata objects", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-curator/samples/{id}" : { + "get" : { + "operationId" : "getSampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateSampleAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a sample object", + "tags" : [ "Sample SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/samples/{id}/versions" : { + "get" : { + "operationId" : "getSampleVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-curator/samples/{id}/versions/{version}" : { + "get" : { + "operationId" : "getSampleByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-user/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchSamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for sample metadata objects", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}" : { + "get" : { + "operationId" : "getSampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}/versions" : { + "get" : { + "operationId" : "getSampleVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}/versions/{version}" : { + "get" : { + "operationId" : "getSampleByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/scim/Groups" : { + "get" : { + "description" : "The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the \"Manage Groups\" permission, then a list of all groups.\n The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK.", + "operationId" : "findGroups", + "parameters" : [ { + "description" : "Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   Using other operators returns an error.\n Groups can be filtered by displayName only.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=displayName eq \"Curator\".", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If excludedAttributes=members is specified in the request, groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", + "in" : "query", + "name" : "excludedAttributes", + "schema" : { + "type" : "string" + } + }, { + "description" : "The 1-based index of the first result in the current set of list results.", + "in" : "query", + "name" : "startIndex", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The number of resources returned in a list response page. The value by default is 100.", + "in" : "query", + "name" : "count", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/FilterGroupsResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Incorrect syntax in the request. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of available groups", + "tags" : [ "Groups" ] + }, + "post" : { + "description" : "The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the \"Group admin\" role. The \"members\" attribute in the request body must be empty, otherwise the endpoint returns an error.\n The endpoint does not require any user permission.\n The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name.\n If there are attributes in the request body that ODM does not support, then ODM ignores them.", + "operationId" : "createGroup", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Group" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupResponse" + } + } + }, + "description" : "The operation is successful. The response body contains the representation of the newly created group." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "409" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, data conflict. See the error message for details." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Add a new user group", + "tags" : [ "Groups" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Groups/{id}" : { + "delete" : { + "description" : "The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated.\n Permissions to call the endpoint:\n   - If the user does not have the \"Manage groups\" permission:\n     * the user has \"Group admin\" role - the user can delete the group;\n     * the user has \"Group member\" role - the group can not be deleted, an error is returned;\n     * the user is not a member of the specified group - the group can not be deleted, an error is returned.\n   - If the user has the \"Manage groups\" permission - the user can delete the group regardless of user’s membership in this group.", + "operationId" : "deleteGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "The group has been successfully removed. No data is returned." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied group ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Delete a group", + "tags" : [ "Groups" ] + }, + "get" : { + "description" : "The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required:\n   - If the user has the \"Manage groups\" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group;\n   - If the user does not have the \"Manage groups\" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned.", + "operationId" : "getGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "If excludedAttributes=members is specified in the request, Groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", + "in" : "query", + "name" : "excludedAttributes", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied group ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no available groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a group by id", + "tags" : [ "Groups" ] + }, + "patch" : { + "description" : "The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n The endpoint requires access to the group as admin of the group: the user has the \"Admin group\" role in the group or the user has the \"Manage groups\" permission.", + "operationId" : "patchGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupPatch" + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "content" : { }, + "description" : "Group is successfully updated. No data is returned" + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Update a group", + "tags" : [ "Groups" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Users" : { + "get" : { + "description" : "The endpoint returns a list of active users. The list can be filtered by user attributes using the filter parameter. If no filtering parameters are passed, then all users are returned. If there are no users in the response body, the endpoint returns 200 OK. The \"Manage organization\" permission is required.", + "operationId" : "findUsers", + "parameters" : [ { + "description" : "Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   and - logical \"and\", the filter is only a match if both expressions evaluate to true;\n   Using other operators returns an error.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] - returns a user with login = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\".", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The 1-based index of the first result in the current set of list results.", + "in" : "query", + "name" : "startIndex", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The number of resources returned in a list response page. The value by default is 100.", + "in" : "query", + "name" : "count", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/FilterUsersResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Incorrect syntax in the request. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of all active users", + "tags" : [ "Users" ] + }, + "post" : { + "description" : "The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The \"Manage organization\" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the \"Manage organization\" permission.\n Only one email can be specified.", + "operationId" : "createUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/User" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "The operation is successful. The response body contains the representation of the newly created or updated user." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "409" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, data conflict. See the error message for details." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Add a new user", + "tags" : [ "Users" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Users/{id}" : { + "delete" : { + "operationId" : "deleteUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "The user has been successfully deactivated. No data is returned." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied user ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Deactivate a user", + "tags" : [ "Users" ] + }, + "get" : { + "description" : "The endpoint returns an active user by id, where id is internal user id in ODM. The \"Manage organization\" permission is required.", + "operationId" : "getUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied user ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no available users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a user by id", + "tags" : [ "Users" ] + }, + "patch" : { + "description" : "The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n It is possible to update attributes of the deactivated users.\n\n The endpoint requires the \"Manage organization\" permission.", + "operationId" : "patchUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UserPatch" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "User is successfully updated. The response body contains the representation of the updated user." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Update a user", + "tags" : [ "Users" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/studies" : { + "get" : { + "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", + "operationId" : "searchStudiesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for study metadata objects", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-curator/studies/{id}" : { + "get" : { + "operationId" : "getStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateStudyAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a study object", + "tags" : [ "Study SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/studies/{id}/versions" : { + "get" : { + "operationId" : "getStudyVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-curator/studies/{id}/versions/{version}" : { + "get" : { + "operationId" : "getStudyByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-user/studies" : { + "get" : { + "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", + "operationId" : "searchStudiesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for study metadata objects", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}" : { + "get" : { + "operationId" : "getStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}/versions" : { + "get" : { + "operationId" : "getStudyVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}/versions/{version}" : { + "get" : { + "operationId" : "getStudyByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/tasks/publish-versions" : { + "post" : { + "description" : "This endpoint publishes all information from drafts and creates new metadata versions for each study/associated objects with unpublished changes. Only curators with the ACCESS_ALL_DATA permission can use this method.", + "operationId" : "publishAllStudies", + "parameters" : [ { + "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", + "in" : "query", + "name" : "versionMessage", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Forbidden" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Asynchronous task that publishes all pending versions across all studies in the instance.", + "tags" : [ "Tasks API" ] + } + }, + "/api/v1/tasks/{id}" : { + "get" : { + "description" : "Supply the accession (id) of an ODM task to retrieve metadata about that task.", + "operationId" : "getTaskInfo", + "parameters" : [ { + "description" : "Accession of the task.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve information about any ODM task.", + "tags" : [ "Tasks API" ] + } + }, + "/api/v1/as-curator/variants" : { + "get" : { + "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getAllVariantsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", + "in" : "query", + "name" : "variantRegion", + "schema" : { + "items" : { + "type" : "string", + "example" : "2:233364596-233385916" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", + "in" : "query", + "name" : "variantFeature", + "schema" : { + "items" : { + "type" : "string", + "example" : "ENSG00000227232" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", + "in" : "query", + "name" : "variantId", + "schema" : { + "items" : { + "type" : "string", + "example" : "rs334" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", + "in" : "query", + "name" : "variantFilter", + "schema" : { + "enum" : [ "pass", "noPass" ], + "type" : "string" + } + }, { + "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", + "in" : "query", + "name" : "variantInfo", + "schema" : { + "type" : "string" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantResponse" + } + } + }, + "description" : "Retrieved variant data." + }, + "400" : { + "content" : { }, + "description" : "Variant data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple variant data and metadata objects", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group/by/run/{id}" : { + "get" : { + "operationId" : "getVariantGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group/{id}" : { + "get" : { + "operationId" : "getVariantGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant group by ID (groupId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchVariantRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}" : { + "get" : { + "operationId" : "getVariantAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by ID (itemId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}/versions" : { + "get" : { + "operationId" : "getVariantVersionsAsCurator", + "parameters" : [ { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of variant object versions by run ID (runId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}/versions/{version}" : { + "get" : { + "operationId" : "getVariantByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the variant object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by run ID and its version", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-user/variants" : { + "get" : { + "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getAllVariantsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", + "in" : "query", + "name" : "variantRegion", + "schema" : { + "items" : { + "type" : "string", + "example" : "2:233364596-233385916" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", + "in" : "query", + "name" : "variantFeature", + "schema" : { + "items" : { + "type" : "string", + "example" : "ENSG00000227232" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", + "in" : "query", + "name" : "variantId", + "schema" : { + "items" : { + "type" : "string", + "example" : "rs334" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", + "in" : "query", + "name" : "variantFilter", + "schema" : { + "enum" : [ "pass", "noPass" ], + "type" : "string" + } + }, { + "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", + "in" : "query", + "name" : "variantInfo", + "schema" : { + "type" : "string" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantResponse" + } + } + }, + "description" : "Retrieved variant data." + }, + "400" : { + "content" : { }, + "description" : "Variant data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple variant data and metadata objects", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchVariantGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group/by/run/{id}" : { + "get" : { + "operationId" : "getVariantGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group/{id}" : { + "get" : { + "operationId" : "getVariantGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant group by ID (groupId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchVariantRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}" : { + "get" : { + "operationId" : "getVariantAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by ID (itemId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}/versions" : { + "get" : { + "operationId" : "getVariantVersionsAsUser", + "parameters" : [ { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of variant object versions by run ID (runId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}/versions/{version}" : { + "get" : { + "operationId" : "getVariantByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the variant object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by run ID and its version", + "tags" : [ "Variant SPoT as User" ] + } + } + }, + "components" : { + "schemas" : { + "Cell" : { + "$ref" : "./schemas/cell/Cell.yaml" + }, + "CellListResponse" : { + "$ref" : "./schemas/cell/CellListResponse.yaml" + }, + "CommitInfo" : { + "$ref" : "./schemas/common/CommitInfo.yaml" + }, + "ExpressionItem" : { + "$ref" : "./schemas/expression/ExpressionItem.yaml" + }, + "ExpressionResponse" : { + "$ref" : "./schemas/expression/ExpressionResponse.yaml" + }, + "IntegrationHelper" : { + "$ref" : "./schemas/common/IntegrationHelper.yaml" + }, + "ListResponse" : { + "$ref" : "./schemas/common/ListResponse.yaml" + }, + "MetaResponse" : { + "$ref" : "./schemas/common/MetaResponse.yaml" + }, + "MetadataContent" : { + "$ref" : "./schemas/common/MetadataContent.yaml" + }, + "MetadataWithId" : { + "$ref" : "./schemas/common/MetadataWithId.yaml" + }, + "PaginationInfo" : { + "$ref" : "./schemas/common/PaginationInfo.yaml" + }, + "RunFilter" : { + "$ref" : "./schemas/common/RunFilter.yaml" + }, + "RunsResponse" : { + "$ref" : "./schemas/common/RunsResponse.yaml" + }, + "ResponseFormat" : { + "$ref" : "./schemas/common/ResponseFormat.yaml" + }, + "SignalRun" : { + "$ref" : "./schemas/common/SignalRun.yaml" + }, + "AFile" : { + "$ref" : "./schemas/afile/AFile.yaml" + }, + "FlowCytometryItem" : { + "$ref" : "./schemas/flow-cytometry/FlowCytometryItem.yaml" + }, + "FlowCytometryResponse" : { + "$ref" : "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + }, + "AttributeInvalidValue" : { + "$ref" : "./schemas/integration/AttributeInvalidValue.yaml" + }, + "AttributeValidationSummary" : { + "$ref" : "./schemas/integration/AttributeValidationSummary.yaml" + }, + "BatchOfIds" : { + "$ref" : "./schemas/integration/BatchOfIds.yaml" + }, + "DataItem" : { + "$ref" : "./schemas/integration/DataItem.yaml" + }, + "DataPresentation" : { + "$ref" : "./schemas/integration/DataPresentation.yaml" + }, + "GroupValidationSummary" : { + "$ref" : "./schemas/integration/GroupValidationSummary.yaml" + }, + "IMetadata" : { + "$ref" : "./schemas/integration/IMetadata.yaml" + }, + "Library" : { + "$ref" : "./schemas/library/Library.yaml" + }, + "Link" : { + "$ref" : "./schemas/integration/Link.yaml" + }, + "MetadataPresentation" : { + "$ref" : "./schemas/integration/MetadataPresentation.yaml" + }, + "OmicsResponse" : { + "$ref" : "./schemas/integration/OmicsResponse.yaml" + }, + "OmicsResponseDataPresentation" : { + "$ref" : "./schemas/integration/OmicsResponseDataPresentation.yaml" + }, + "OmicsResponseMetadataPresentation" : { + "$ref" : "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + }, + "OmicsResponseMetadataWithId" : { + "$ref" : "./schemas/integration/OmicsResponseMetadataWithId.yaml" + }, + "Preparation" : { + "$ref" : "./schemas/preparation/Preparation.yaml" + }, + "Relationships" : { + "$ref" : "./schemas/integration/Relationships.yaml" + }, + "SourceTypePair" : { + "$ref" : "./schemas/integration/SourceTypePair.yaml" + }, + "StreamingOutput" : { + "$ref" : "./schemas/integration/StreamingOutput.yaml" + }, + "Study" : { + "$ref" : "./schemas/study/Study.yaml" + }, + "StudyValidationSummary" : { + "$ref" : "./schemas/integration/StudyValidationSummary.yaml" + }, + "TaskInfo" : { + "$ref" : "./schemas/tasks/TaskInfo.yaml" + }, + "ValidationError" : { + "$ref" : "./schemas/integration/ValidationError.yaml" + }, + "SearchStudyRequest" : { + "$ref" : "./schemas/integration/SearchStudyRequest.yaml" + }, + "AppliedFilter" : { + "$ref" : "./schemas/integration/AppliedFilter.yaml" + }, + "PageRequest" : { + "$ref" : "./schemas/integration/PageRequest.yaml" + }, + "FindObjectsResponse" : { + "$ref" : "./schemas/integration/FindObjectsResponse.yaml" + }, + "ObjectsPage" : { + "$ref" : "./schemas/integration/ObjectsPage.yaml" + }, + "StudySearchInfo" : { + "$ref" : "./schemas/integration/StudySearchInfo.yaml" + }, + "MetainfoKeyForSummary" : { + "$ref" : "./schemas/integration/MetainfoKeyForSummary.yaml" + }, + "FilterOptionGroup" : { + "$ref" : "./schemas/integration/FilterOptionGroup.yaml" + }, + "FilterOption" : { + "$ref" : "./schemas/integration/FilterOption.yaml" + }, + "DERequest" : { + "$ref" : "./schemas/cell/DERequest.yaml" + }, + "DEResponse" : { + "$ref" : "./schemas/cell/DEResponse.yaml" + }, + "GSRequest" : { + "$ref" : "./schemas/cell/GSRequest.yaml" + }, + "GSResponse" : { + "$ref" : "./schemas/cell/GSResponse.yaml" + }, + "CRRequest" : { + "$ref" : "./schemas/cell/CRRequest.yaml" + }, + "CRResponse" : { + "$ref" : "./schemas/cell/CRResponse.yaml" + }, + "ExceptionTypeAndMessage" : { + "$ref" : "./schemas/job/ExceptionTypeAndMessage.yaml" + }, + "ImportCellsRequest" : { + "$ref" : "./schemas/job/ImportCellsRequest.yaml" + }, + "ImportCellsFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportCellsFromMultipartRequest.yaml" + }, + "ImportMetadataRequest" : { + "$ref" : "./schemas/job/ImportMetadataRequest.yaml" + }, + "ImportMetadataFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + }, + "ImportSignalRunRequest" : { + "$ref" : "./schemas/job/ImportSignalRunRequest.yaml" + }, + "ImportSignalRunFomMultipartRequest" : { + "$ref" : "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + }, + "ImportExpressionSignalRunRequest" : { + "$ref" : "./schemas/job/ImportExpressionSignalRunRequest.yaml" + }, + "ImportExpressionSignalRunFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + }, + "ImportAFileRequest" : { + "$ref" : "./schemas/job/ImportAFileRequest.yaml" + }, + "ImportAFileFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportAFileFromMultipartRequest.yaml" + }, + "Info" : { + "$ref" : "./schemas/job/Info.yaml" + }, + "JobRuntimeError" : { + "$ref" : "./schemas/job/JobRuntimeError.yaml" + }, + "Output" : { + "$ref" : "./schemas/job/Output.yaml" + }, + "DetachedCollection" : { + "$ref" : "./schemas/manage-data/DetachedCollection.yaml" + }, + "DetachedObject" : { + "$ref" : "./schemas/manage-data/DetachedObject.yaml" + }, + "ManagedObject" : { + "$ref" : "./schemas/manage-data/ManagedObject.yaml" + }, + "XrefSetCreateRequest" : { + "$ref" : "./schemas/reference-data/XrefSetCreateRequest.yaml" + }, + "XrefSetCreateResponse" : { + "$ref" : "./schemas/reference-data/XrefSetCreateResponse.yaml" + }, + "XrefSetMetadata" : { + "$ref" : "./schemas/reference-data/XrefSetMetadata.yaml" + }, + "XrefSetSearchResult" : { + "$ref" : "./schemas/reference-data/XrefSetSearchResult.yaml" + }, + "XrefSetSearchResultEntry" : { + "$ref" : "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + }, + "UploadRGRequest" : { + "$ref" : "./schemas/reference-genome/UploadRGRequest.yaml" + }, + "AccessionResponse" : { + "$ref" : "./schemas/common/AccessionResponse.yaml" + }, + "RGItem" : { + "$ref" : "./schemas/reference-genome/RGItem.yaml" + }, + "Sample" : { + "$ref" : "./schemas/sample/Sample.yaml" + }, + "Group" : { + "$ref" : "./schemas/scim/Group.yaml" + }, + "Member" : { + "$ref" : "./schemas/scim/Member.yaml" + }, + "GroupPatch" : { + "$ref" : "./schemas/scim/GroupPatch.yaml" + }, + "PatchOperation" : { + "$ref" : "./schemas/scim/PatchOperation.yaml" + }, + "FilterGroupsResponse" : { + "$ref" : "./schemas/scim/FilterGroupsResponse.yaml" + }, + "GroupResponse" : { + "$ref" : "./schemas/scim/GroupResponse.yaml" + }, + "Meta" : { + "$ref" : "./schemas/scim/Meta.yaml" + }, + "SCIMErrorResponse" : { + "$ref" : "./schemas/scim/SCIMErrorResponse.yaml" + }, + "BaseErrorResponse" : { + "$ref" : "./schemas/scim/BaseErrorResponse.yaml" + }, + "ErrorMessage" : { + "$ref" : "./schemas/scim/ErrorMessage.yaml" + }, + "User" : { + "$ref" : "./schemas/scim/User.yaml" + }, + "Email" : { + "$ref" : "./schemas/scim/Email.yaml" + }, + "UserPatch" : { + "$ref" : "./schemas/scim/UserPatch.yaml" + }, + "FilterUsersResponse" : { + "$ref" : "./schemas/scim/FilterUsersResponse.yaml" + }, + "UserResponse" : { + "$ref" : "./schemas/scim/UserResponse.yaml" + }, + "VariantMetadataWithId" : { + "$ref" : "./schemas/variant/VariantMetadataWithId.yaml" + }, + "VariantItem" : { + "$ref" : "./schemas/variant/VariantItem.yaml" + }, + "VariantResponse" : { + "$ref" : "./schemas/variant/VariantResponse.yaml" + } + }, + "securitySchemes" : { + "Access-token" : { + "in" : "header", + "name" : "Authorization", + "type" : "apiKey" + }, + "Genestack-API-Token" : { + "in" : "header", + "name" : "Genestack-API-Token", + "type" : "apiKey" + } + }, + "parameters" : { + "AllowDuplicates" : { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } + } + } +} diff --git a/openapi/v1/preparationCurator.yaml b/openapi/v1/preparationCurator.yaml deleted file mode 100644 index 56c3dee3..00000000 --- a/openapi/v1/preparationCurator.yaml +++ /dev/null @@ -1,471 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the preparationCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Preparation SPoT as Curator -paths: - /api/v1/as-curator/preparations: - get: - description: |- - Retrieve preparation metadata objects by searching/listing preparation metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for preparation metadata objects - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/by/group/{id}: - get: - operationId: getPreparationsByGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparations related to the given group - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/{id}: - get: - operationId: getPreparationAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updatePreparationAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a preparation object - tags: - - Preparation SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/preparations/{id}/versions: - get: - operationId: getPreparationVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/{id}/versions/{version}: - get: - operationId: getPreparationByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/preparationUser.yaml b/openapi/v1/preparationUser.yaml deleted file mode 100644 index 8d3ed782..00000000 --- a/openapi/v1/preparationUser.yaml +++ /dev/null @@ -1,414 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the preparationUser API endpoints for ODM. These are typically used to find and retrieve preparation metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Preparation SPoT as User -paths: - /api/v1/as-user/preparations: - get: - description: |- - Retrieve preparation metadata objects by searching/listing preparation metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for preparation metadata objects - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/by/group/{id}: - get: - operationId: getPreparationsByGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparations related to the given group - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}: - get: - operationId: getPreparationAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}/versions: - get: - operationId: getPreparationVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}/versions/{version}: - get: - operationId: getPreparationByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/referenceData.yaml b/openapi/v1/referenceData.yaml deleted file mode 100644 index a2873b57..00000000 --- a/openapi/v1/referenceData.yaml +++ /dev/null @@ -1,307 +0,0 @@ -openapi: 3.1.0 -info: - description: | - These API endpoints serve to upload and remove xrefsets, search in xrefsets and get details about them. These API endpoints are experimental. The parameters, request body and response body may change. - title: Xrefsets API - version: default-released -tags: -- name: Xrefset queries -paths: - /api/v1/xrefsets: - post: - operationId: create - requestBody: - description: |+ - Request body for creating a new xrefset. - ## Important: - The length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation. - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetCreateRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetCreateResponse" - description: successful operation - "201": - content: {} - description: The objects were successfully created. The returned value is - a list of created objects. - "400": - content: {} - description: The object cannot be created. This error occurs when the supplied - data or metadata are incorrect. Please see error message for details - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to work with the xrefset. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a new xrefset file - tags: - - Xrefset queries - x-codegen-request-body-name: body - /api/v1/xrefsets/entries: - get: - description: |+ - ## Conditions - It is possible to supply a list of values for "targetId" and "sourceId". If non-empty lists of values for "targetId" and "sourceId" are supplied, the following search rule is applied: (sourceId = "S1" OR .. sourceId = "Sn") AND (targetId = "T1" OR .. targetId = "Tm"). - ## Important: - The length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation. - operationId: searchEntries - parameters: - - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ - \ mapping this is gene ID, e.g. \"ENSG00000146648\"" - explode: true - in: query - name: sourceId - schema: - items: - type: string - type: array - style: form - - description: "Supply targetId in the format \"targetId\". For transcript-gene\ - \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" - explode: true - in: query - name: targetId - schema: - items: - type: string - type: array - style: form - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetSearchResult" - description: Json object with the cursor and json array of retrieved xrefset - data. Response entries are ordered by xrefset ID and then by source ID. - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of entries across all xrefsets for given sourceId and - targetId - tags: - - Xrefset queries - /api/v1/xrefsets/{id}: - delete: - operationId: deleteFile - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - pattern: .* - type: string - responses: - "204": - content: {} - description: "Xrefset file successfully marked for deletion, mappings have\ - \ been removed" - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to work with the xrefset. - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: |- - Delete a xrefset with all related data. - Only users who uploaded the xrefset are allowed to delete it. - tags: - - Xrefset queries - /api/v1/xrefsets/{id}/entries: - get: - description: |+ - ## Conditions - It is possible to supply a list of values for "targetId" and "sourceId". If non-empty lists of values for "targetId" and "sourceId" are supplied, the following search rule is applied: (sourceId = "S1" OR .. sourceId = "Sn") AND (targetId = "T1" OR .. targetId = "Tm"). - - operationId: searchEntriesWithinFile - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - type: string - - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ - \ mapping this is gene ID, e.g. \"ENSG00000146648\"" - explode: true - in: query - name: sourceId - schema: - items: - type: string - type: array - style: form - - description: "Supply targetId in the format \"targetId\". For transcript-gene\ - \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" - explode: true - in: query - name: targetId - schema: - items: - type: string - type: array - style: form - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetSearchResult" - description: Json object with the cursor and json array of retrieved xrefset - data. Response entries are ordered by xrefset ID and then by source ID. - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of entries for the given xrefset and given sourceId - and targetId - tags: - - Xrefset queries - /api/v1/xrefsets/{id}/metadata: - get: - operationId: getDetailsByAccession - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetMetadata" - description: "Object containing xrefset details, including user submitted\ - \ metadata and system info" - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve xrefset details - tags: - - Xrefset queries -components: - schemas: - XrefSetCreateRequest: - $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" - XrefSetCreateResponse: - $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" - XrefSetMetadata: - $ref: "./schemas/reference-data/XrefSetMetadata.yaml" - XrefSetSearchResult: - $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" - XrefSetSearchResultEntry: - $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/referenceGenome.yaml b/openapi/v1/referenceGenome.yaml deleted file mode 100644 index d87e9611..00000000 --- a/openapi/v1/referenceGenome.yaml +++ /dev/null @@ -1,189 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - These API endpoints serve to upload and remove reference genomes as well as search and get details about them. - title: ODM API - version: default-released -tags: - - name: Reference genome -paths: - /api/v1/reference-genomes: - get: - operationId: search_reference_genomes - summary: List or search for Reference Genome objects - tags: - - Reference genome - description: |- - Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects. - parameters: - - in: query - name: organism - description: Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`). - schema: - type: string - - in: query - name: assembly - description: Major version (for example, `GRCh38`). - schema: - type: string - - in: query - name: release - description: Ensembl reference genome minor version (for example, `75` or `109`). - schema: - type: string - - in: query - name: query - description: Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`). - schema: - type: string - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - post: - operationId: upload - summary: Upload reference genome to ODM - tags: - - Reference genome - description: |- - In order to import reference genome file, please fill in the following fields: - - * `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format. - Note: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided. - * `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html). - Note: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list. - * `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html). - * `release` - Ensembl reference genome minor version (for example, `75` or `109`). - * `name` - customized reference genome title that is used for linkage variant files. - By default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`. - - Reference genome will be available after initialisation. Please track initialisation task status. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/UploadRGRequest" - required: false - responses: - "201": - content: - application/json: - schema: - $ref: "#/components/schemas/AccessionResponse" - description: The object was successfully created. - "400": - content: { } - description: The object cannot be created. This error occurs when the supplied - data or metadata are incorrect. Please see error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: { } - description: Not enough permissions to call method. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - x-codegen-request-body-name: body - /api/v1/reference-genomes/{id}: - get: - operationId: get_reference_genome_by_accession - summary: Retrieve a single Reference Genome object by ID (accession) - tags: - - Reference genome - parameters: - - in: path - name: id - description: Unique identifier (Genestack accession) of Reference Genome object. - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RGItem" - description: The request was successful. The returned value is the object. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] -components: - schemas: - UploadRGRequest: - $ref: "./schemas/reference-genome/UploadRGRequest.yaml" - AccessionResponse: - $ref: "./schemas/common/AccessionResponse.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - RGItem: - $ref: "./schemas/reference-genome/RGItem.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/sampleCurator.yaml b/openapi/v1/sampleCurator.yaml deleted file mode 100644 index c72b175b..00000000 --- a/openapi/v1/sampleCurator.yaml +++ /dev/null @@ -1,398 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the sampleCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Sample SPoT as Curator -paths: - /api/v1/as-curator/samples: - get: - description: |- - Retrieve sample metadata objects by searching/listing sample metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchSamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - - in: query - name: filter - schema: - type: string - - description: Search for sample objects via a full-text query over all sample - metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are - automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for sample metadata objects - tags: - - Sample SPoT as Curator - /api/v1/as-curator/samples/{id}: - get: - operationId: getSampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateSampleAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a sample object - tags: - - Sample SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/samples/{id}/versions: - get: - operationId: getSampleVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Sample SPoT as Curator - /api/v1/as-curator/samples/{id}/versions/{version}: - get: - operationId: getSampleByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Sample: - $ref: "./schemas/sample/Sample.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/sampleUser.yaml b/openapi/v1/sampleUser.yaml deleted file mode 100644 index 2984abc0..00000000 --- a/openapi/v1/sampleUser.yaml +++ /dev/null @@ -1,339 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the sampleUser API endpoints for ODM. These are typically used to find and retrieve sample metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Sample SPoT as User -paths: - /api/v1/as-user/samples: - get: - description: |- - Retrieve sample metadata objects by searching/listing sample metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchSamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - - in: query - name: filter - schema: - type: string - - description: Search for sample objects via a full-text query over all sample - metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are - automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for sample metadata objects - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}: - get: - operationId: getSampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}/versions: - get: - operationId: getSampleVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}/versions/{version}: - get: - operationId: getSampleByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Sample: - $ref: "./schemas/sample/Sample.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/scimGroups.yaml b/openapi/v1/scimGroups.yaml deleted file mode 100644 index 45cbdd80..00000000 --- a/openapi/v1/scimGroups.yaml +++ /dev/null @@ -1,373 +0,0 @@ -openapi: 3.1.0 -info: - description: "This swagger page describes the API endpoints to add, edit and remove\ - \ groups. The endpoints are developed according to the SCIM 2.0 specification." - title: ODM API - version: default-released -tags: -- name: Groups -paths: - /api/v1/scim/Groups: - get: - description: |- - The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the "Manage Groups" permission, then a list of all groups. - The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK. - operationId: findGroups - parameters: - - description: |- - Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored. - Supported operators: -   eq - equal, the attribute and operator values must be identical for a match; -   Using other operators returns an error. - Groups can be filtered by displayName only. - Attribute names and attribute operators used in filters are case insensitive. - Examples of the request: -   filter=displayName eq "Curator". - in: query - name: filter - schema: - type: string - - description: "If excludedAttributes=members is specified in the request, groups\ - \ are returned without the members attribute. Other attributes are not supported\ - \ in excludedAttributes parameter and ignored in the request → all attributes\ - \ are returned in the response body." - in: query - name: excludedAttributes - schema: - type: string - - description: The 1-based index of the first result in the current set of list - results. - in: query - name: startIndex - schema: - format: int32 - type: integer - - description: The number of resources returned in a list response page. The - value by default is 100. - in: query - name: count - schema: - format: int32 - type: integer - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/FilterGroupsResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Incorrect syntax in the request. See the error message for - details. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of available groups - tags: - - Groups - post: - description: |- - The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the "Group admin" role. The "members" attribute in the request body must be empty, otherwise the endpoint returns an error. - The endpoint does not require any user permission. - The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name. - If there are attributes in the request body that ODM does not support, then ODM ignores them. - operationId: createGroup - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/Group" - required: true - responses: - "201": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/GroupResponse" - description: The operation is successful. The response body contains the - representation of the newly created group. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "409": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, data conflict. See the error\ - \ message for details." - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Add a new user group - tags: - - Groups - x-codegen-request-body-name: body - /api/v1/scim/Groups/{id}: - delete: - description: |- - The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated. - Permissions to call the endpoint: -   - If the user does not have the "Manage groups" permission: -     * the user has "Group admin" role - the user can delete the group; -     * the user has "Group member" role - the group can not be deleted, an error is returned; -     * the user is not a member of the specified group - the group can not be deleted, an error is returned. -   - If the user has the "Manage groups" permission - the user can delete the group regardless of user’s membership in this group. - operationId: deleteGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "204": - content: {} - description: The group has been successfully removed. No data is returned. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied group ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Group admin" role in the group - or the "Manage groups" permission is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Delete a group - tags: - - Groups - get: - description: |- - The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required: -   - If the user has the "Manage groups" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group; -   - If the user does not have the "Manage groups" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned. - operationId: getGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - - description: "If excludedAttributes=members is specified in the request, Groups\ - \ are returned without the members attribute. Other attributes are not supported\ - \ in excludedAttributes parameter and ignored in the request → all attributes\ - \ are returned in the response body." - in: query - name: excludedAttributes - schema: - type: string - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/GroupResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied group ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no available groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a group by id - tags: - - Groups - patch: - description: |- - The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group. - - Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification. - - The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK. - - A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned. - - The endpoint requires access to the group as admin of the group: the user has the "Admin group" role in the group or the user has the "Manage groups" permission. - operationId: patchGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/GroupPatch" - required: true - responses: - "204": - content: {} - description: Group is successfully updated. No data is returned - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be updated, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Group admin" role in the group - or the "Manage groups" permission is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Update a group - tags: - - Groups - x-codegen-request-body-name: body -components: - schemas: - Group: - $ref: "./schemas/scim/Group.yaml" - Member: - $ref: "./schemas/scim/Member.yaml" - GroupPatch: - $ref: "./schemas/scim/GroupPatch.yaml" - PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" - FilterGroupsResponse: - $ref: "./schemas/scim/FilterGroupsResponse.yaml" - GroupResponse: - $ref: "./schemas/scim/GroupResponse.yaml" - Meta: - $ref: "./schemas/scim/Meta.yaml" - SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" - BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" - ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/scimUsers.yaml b/openapi/v1/scimUsers.yaml deleted file mode 100644 index bcfe92ff..00000000 --- a/openapi/v1/scimUsers.yaml +++ /dev/null @@ -1,376 +0,0 @@ -openapi: 3.1.0 -info: - description: "This swagger page describes the API endpoints to add, edit and remove\ - \ users. The endpoints are developed according to the SCIM 2.0 specification." - title: ODM API - version: default-released -tags: -- name: Users -paths: - /api/v1/scim/Users: - get: - description: "The endpoint returns a list of active users. The list can be filtered\ - \ by user attributes using the filter parameter. If no filtering parameters\ - \ are passed, then all users are returned. If there are no users in the response\ - \ body, the endpoint returns 200 OK. The \"Manage organization\" permission\ - \ is required." - operationId: findUsers - parameters: - - description: |- - Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored. - Supported operators: -   eq - equal, the attribute and operator values must be identical for a match; -   and - logical "and", the filter is only a match if both expressions evaluate to true; -   Using other operators returns an error. - Attribute names and attribute operators used in filters are case insensitive. - Examples of the request: -   filter=emails[type eq "work" and value eq "user@example.com"] - returns a user with login = user@example.com -   filter=userName eq "bjensen" -   filter=emails[type eq "work" and value eq "user@example.com"] and userName eq "bjensen". - in: query - name: filter - schema: - type: string - - description: The 1-based index of the first result in the current set of list - results. - in: query - name: startIndex - schema: - format: int32 - type: integer - - description: The number of resources returned in a list response page. The - value by default is 100. - in: query - name: count - schema: - format: int32 - type: integer - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/FilterUsersResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Incorrect syntax in the request. See the error message for - details. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of all active users - tags: - - Users - post: - description: |- - The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The "Manage organization" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the "Manage organization" permission. - Only one email can be specified. - operationId: createUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/User" - required: true - responses: - "201": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: The operation is successful. The response body contains the - representation of the newly created or updated user. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "409": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, data conflict. See the error\ - \ message for details." - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Add a new user - tags: - - Users - x-codegen-request-body-name: body - /api/v1/scim/Users/{id}: - delete: - operationId: deleteUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "204": - content: {} - description: The user has been successfully deactivated. No data is returned. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied user ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Deactivate a user - tags: - - Users - get: - description: "The endpoint returns an active user by id, where id is internal\ - \ user id in ODM. The \"Manage organization\" permission is required." - operationId: getUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied user ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no available users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a user by id - tags: - - Users - patch: - description: |- - The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM. - - Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification. - - The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK. - - A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned. - - It is possible to update attributes of the deactivated users. - - The endpoint requires the "Manage organization" permission. - operationId: patchUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/UserPatch" - required: true - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: User is successfully updated. The response body contains the - representation of the updated user. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be updated, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Update a user - tags: - - Users - x-codegen-request-body-name: body -components: - schemas: - User: - $ref: "./schemas/scim/User.yaml" - Email: - $ref: "./schemas/scim/Email.yaml" - UserPatch: - $ref: "./schemas/scim/UserPatch.yaml" - PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" - FilterUsersResponse: - $ref: "./schemas/scim/FilterUsersResponse.yaml" - UserResponse: - $ref: "./schemas/scim/UserResponse.yaml" - Meta: - $ref: "./schemas/scim/Meta.yaml" - SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" - BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" - ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/studyCurator.yaml b/openapi/v1/studyCurator.yaml deleted file mode 100644 index f881a10e..00000000 --- a/openapi/v1/studyCurator.yaml +++ /dev/null @@ -1,397 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the studyCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Study SPoT as Curator -paths: - /api/v1/as-curator/studies: - get: - description: |- - Retrieve study metadata objects by searching/listing study metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all study objects. - operationId: searchStudiesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - - - in: query - name: filter - schema: - type: string - - description: Search for study objects via a full-text query over all study - metadata fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching - dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for study metadata objects - tags: - - Study SPoT as Curator - /api/v1/as-curator/studies/{id}: - get: - operationId: getStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateStudyAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a study object - tags: - - Study SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/studies/{id}/versions: - get: - operationId: getStudyVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Study SPoT as Curator - /api/v1/as-curator/studies/{id}/versions/{version}: - get: - operationId: getStudyByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/studyUser.yaml b/openapi/v1/studyUser.yaml deleted file mode 100644 index ca54d746..00000000 --- a/openapi/v1/studyUser.yaml +++ /dev/null @@ -1,340 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the studyUser API endpoints for ODM. These are typically used to find and retrieve study metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Study SPoT as User -paths: - /api/v1/as-user/studies: - get: - description: |- - Retrieve study metadata objects by searching/listing study metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all study objects. - operationId: searchStudiesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - - - in: query - name: filter - schema: - type: string - - description: Search for study objects via a full-text query over all study - metadata fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching - dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for study metadata objects - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}: - get: - operationId: getStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}/versions: - get: - operationId: getStudyVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}/versions/{version}: - get: - operationId: getStudyByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/tasks.yaml b/openapi/v1/tasks.yaml deleted file mode 100644 index 7535177c..00000000 --- a/openapi/v1/tasks.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.1.0 -info: - description: | - These API endpoints serve to work with asynchronous tasks. - title: Tasks API - version: default-released -tags: -- name: Tasks API -paths: - /api/v1/tasks/publish-versions: - post: - description: This endpoint publishes all information from drafts and creates - new metadata versions for each study/associated objects with unpublished changes. Only - curators with the ACCESS_ALL_DATA permission can use this method. - operationId: publishAllStudies - parameters: - - description: Supply text to name this version. If not supplied the version - name is set to “Auto-published by API call” - in: query - name: versionMessage - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Forbidden - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Asynchronous task that publishes all pending versions across all studies - in the instance. - tags: - - Tasks API - /api/v1/tasks/{id}: - get: - description: Supply the accession (id) of an ODM task to retrieve metadata about - that task. - operationId: getTaskInfo - parameters: - - description: Accession of the task. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve information about any ODM task. - tags: - - Tasks API -components: - schemas: - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/variantCurator.yaml b/openapi/v1/variantCurator.yaml deleted file mode 100644 index aa51ae7c..00000000 --- a/openapi/v1/variantCurator.yaml +++ /dev/null @@ -1,713 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the variantCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Variant SPoT as Curator -paths: - /api/v1/as-curator/variants: - get: - description: |+ - Retrieve all variant data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getAllVariantsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list. - in: query - name: variantRegion - schema: - items: - type: string - example: 2:233364596-233385916 - type: array - style: form - - description: Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list. - in: query - name: variantFeature - schema: - items: - type: string - example: ENSG00000227232 - type: array - style: form - - description: One or more specific variation IDs can be specified. E.g. `rs838705` - in: query - name: variantId - schema: - items: - type: string - example: rs334 - type: array - style: form - - description: |- - The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned. - - 1. pass - return gene variants which passed all filters - 2. noPass - return gene variants which failed one or more filters - in: query - name: variantFilter - schema: - enum: - - pass - - noPass - type: string - - description: |- - Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`. - Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. - Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. - This means any differences smaller than that won't be detected. For more precise results, please use range queries. - Combine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses - in: query - name: variantInfo - schema: - type: string - - description: Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantResponse" - description: Retrieved variant data. - "400": - content: {} - description: Variant data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple variant data and metadata objects - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group/by/run/{id}: - get: - operationId: getVariantGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group/{id}: - get: - operationId: getVariantGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant group by ID (groupId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchVariantRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}: - get: - operationId: getVariantAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by ID (itemId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}/versions: - get: - operationId: getVariantVersionsAsCurator - parameters: - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of variant object versions by run ID (runId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}/versions/{version}: - get: - operationId: getVariantByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the variant object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by run ID and its version - tags: - - Variant SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" - VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/variantUser.yaml b/openapi/v1/variantUser.yaml deleted file mode 100644 index 644567aa..00000000 --- a/openapi/v1/variantUser.yaml +++ /dev/null @@ -1,714 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Variant SPoT as User -paths: - /api/v1/as-user/variants: - get: - description: |+ - Retrieve all variant data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getAllVariantsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list. - in: query - name: variantRegion - schema: - items: - type: string - example: 2:233364596-233385916 - type: array - style: form - - description: Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list. - in: query - name: variantFeature - schema: - items: - type: string - example: ENSG00000227232 - type: array - style: form - - description: One or more specific variation IDs can be specified. E.g. `rs838705` - in: query - name: variantId - schema: - items: - type: string - example: rs334 - type: array - style: form - - description: |- - The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned. - - 1. pass - return gene variants which passed all filters - 2. noPass - return gene variants which failed one or more filters - in: query - name: variantFilter - schema: - enum: - - pass - - noPass - type: string - - description: |- - Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`. - Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. - Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. - This means any differences smaller than that won't be detected. For more precise results, please use range queries. - Combine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses - in: query - name: variantInfo - schema: - type: string - - description: Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantResponse" - description: Retrieved variant data. - "400": - content: {} - description: Variant data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple variant data and metadata objects - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchVariantGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group/by/run/{id}: - get: - operationId: getVariantGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group/{id}: - get: - operationId: getVariantGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant group by ID (groupId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchVariantRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}: - get: - operationId: getVariantAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by ID (itemId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}/versions: - get: - operationId: getVariantVersionsAsUser - parameters: - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of variant object versions by run ID (runId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}/versions/{version}: - get: - operationId: getVariantByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the variant object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by run ID and its version - tags: - - Variant SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" - VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey From 381bc0c6f53f95e95d0dedb50568bfc2c5b5eca8 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:06:01 +0100 Subject: [PATCH 04/29] [ODM-13126] Dummy ctrl+x and ctrl+v --- .gitignore | 1 + openapi/v1/odm.yaml | 2631 +- openapi/v1/odmApi.json | 21233 ---------------- openapi/v1/schemas/afile/AFile.yaml | 1 - openapi/v1/schemas/cell/CRRequest.yaml | 7 - openapi/v1/schemas/cell/CRResponse.yaml | 21 - openapi/v1/schemas/cell/Cell.yaml | 33 - openapi/v1/schemas/cell/CellListResponse.yaml | 34 - openapi/v1/schemas/cell/DERequest.yaml | 22 - openapi/v1/schemas/cell/DEResponse.yaml | 97 - openapi/v1/schemas/cell/GSRequest.yaml | 17 - openapi/v1/schemas/cell/GSResponse.yaml | 68 - .../v1/schemas/common/AccessionResponse.yaml | 8 - openapi/v1/schemas/common/CommitInfo.yaml | 17 - .../v1/schemas/common/IntegrationHelper.yaml | 1 - openapi/v1/schemas/common/ListResponse.yaml | 23 - openapi/v1/schemas/common/MetaResponse.yaml | 14 - .../v1/schemas/common/MetadataContent.yaml | 1 - openapi/v1/schemas/common/MetadataWithId.yaml | 10 - openapi/v1/schemas/common/PaginationInfo.yaml | 19 - openapi/v1/schemas/common/ResponseFormat.yaml | 3 - openapi/v1/schemas/common/RunFilter.yaml | 4 - openapi/v1/schemas/common/RunsResponse.yaml | 16 - openapi/v1/schemas/common/SignalRun.yaml | 1 - .../v1/schemas/expression/ExpressionItem.yaml | 57 - .../expression/ExpressionResponse.yaml | 37 - .../flow-cytometry/FlowCytometryItem.yaml | 43 - .../flow-cytometry/FlowCytometryResponse.yaml | 39 - .../v1/schemas/integration/AppliedFilter.yaml | 16 - .../integration/AttributeInvalidValue.yaml | 26 - .../AttributeValidationSummary.yaml | 29 - .../v1/schemas/integration/BatchOfIds.yaml | 32 - openapi/v1/schemas/integration/DataItem.yaml | 6 - .../schemas/integration/DataPresentation.yaml | 13 - .../v1/schemas/integration/FilterOption.yaml | 16 - .../integration/FilterOptionGroup.yaml | 26 - .../integration/FindObjectsResponse.yaml | 78 - .../integration/GroupValidationSummary.yaml | 47 - openapi/v1/schemas/integration/IMetadata.yaml | 21 - openapi/v1/schemas/integration/Link.yaml | 21 - .../integration/MetadataPresentation.yaml | 20 - .../integration/MetainfoKeyForSummary.yaml | 13 - .../v1/schemas/integration/ObjectsPage.yaml | 57 - .../v1/schemas/integration/OmicsResponse.yaml | 24 - .../OmicsResponseDataPresentation.yaml | 18 - .../OmicsResponseMetadataPresentation.yaml | 18 - .../OmicsResponseMetadataWithId.yaml | 18 - .../v1/schemas/integration/PageRequest.yaml | 15 - .../v1/schemas/integration/Relationships.yaml | 14 - .../integration/SearchStudyRequest.yaml | 30 - .../schemas/integration/SourceTypePair.yaml | 13 - .../schemas/integration/StreamingOutput.yaml | 1 - .../schemas/integration/StudySearchInfo.yaml | 46 - .../integration/StudyValidationSummary.yaml | 80 - .../schemas/integration/ValidationError.yaml | 15 - .../schemas/job/ExceptionTypeAndMessage.yaml | 9 - .../job/ImportAFileFromMultipartRequest.yaml | 28 - .../v1/schemas/job/ImportAFileRequest.yaml | 34 - .../job/ImportCellsFromMultipartRequest.yaml | 18 - .../v1/schemas/job/ImportCellsRequest.yaml | 9 - ...pressionSignalRunFromMultipartRequest.yaml | 34 - .../job/ImportExpressionSignalRunRequest.yaml | 42 - .../ImportMetadataFromMultipartRequest.yaml | 21 - .../v1/schemas/job/ImportMetadataRequest.yaml | 21 - .../ImportSignalRunFomMultipartRequest.yaml | 27 - .../schemas/job/ImportSignalRunRequest.yaml | 30 - openapi/v1/schemas/job/Info.yaml | 48 - openapi/v1/schemas/job/JobRuntimeError.yaml | 19 - openapi/v1/schemas/job/Output.yaml | 48 - openapi/v1/schemas/library/Library.yaml | 1 - .../manage-data/DetachedCollection.yaml | 25 - .../schemas/manage-data/DetachedObject.yaml | 30 - .../v1/schemas/manage-data/ManagedObject.yaml | 21 - .../v1/schemas/preparation/Preparation.yaml | 1 - .../reference-data/XrefSetCreateRequest.yaml | 26 - .../reference-data/XrefSetCreateResponse.yaml | 56 - .../reference-data/XrefSetMetadata.yaml | 29 - .../reference-data/XrefSetSearchResult.yaml | 19 - .../XrefSetSearchResultEntry.yaml | 17 - .../v1/schemas/reference-genome/RGItem.yaml | 31 - .../reference-genome/UploadRGRequest.yaml | 23 - openapi/v1/schemas/sample/Sample.yaml | 1 - .../v1/schemas/scim/BaseErrorResponse.yaml | 10 - openapi/v1/schemas/scim/Email.yaml | 14 - openapi/v1/schemas/scim/ErrorMessage.yaml | 7 - .../v1/schemas/scim/FilterGroupsResponse.yaml | 26 - .../v1/schemas/scim/FilterUsersResponse.yaml | 26 - openapi/v1/schemas/scim/Group.yaml | 38 - openapi/v1/schemas/scim/GroupPatch.yaml | 31 - openapi/v1/schemas/scim/GroupResponse.yaml | 12 - openapi/v1/schemas/scim/Member.yaml | 16 - openapi/v1/schemas/scim/Meta.yaml | 14 - openapi/v1/schemas/scim/PatchOperation.yaml | 20 - .../v1/schemas/scim/SCIMErrorResponse.yaml | 30 - openapi/v1/schemas/scim/User.yaml | 49 - openapi/v1/schemas/scim/UserPatch.yaml | 31 - openapi/v1/schemas/scim/UserResponse.yaml | 12 - openapi/v1/schemas/study/Study.yaml | 1 - openapi/v1/schemas/tasks/TaskInfo.yaml | 43 - openapi/v1/schemas/variant/VariantItem.yaml | 82 - .../variant/VariantMetadataWithId.yaml | 15 - .../v1/schemas/variant/VariantResponse.yaml | 71 - 102 files changed, 2533 insertions(+), 23854 deletions(-) delete mode 100644 openapi/v1/odmApi.json diff --git a/.gitignore b/.gitignore index f53d807f..f33ef450 100644 --- a/.gitignore +++ b/.gitignore @@ -26,4 +26,5 @@ node_modules # Ignore merged file and one downloaded for processor-controller /openapi/v1/odmApi.yaml +/openapi/v1/odmApi.json /openapi/v1/processorsController.yaml diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 24fb56fe..745744c1 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -23883,203 +23883,2636 @@ paths: components: schemas: Cell: - $ref: "./schemas/cell/Cell.yaml" + type: object + #schema is not described because of dynamic attributes' limited support in openapi-generator + description: |+ + Cell object having required, optional and dynamic attributes. + + **Required:** + - `cellId`: string - unique cell identifier, which consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. + - `barcode`: string - raw barcode of the cell, e.g. `AAACCTGAGCGCTCCA-1`. + - `batch`: string - identifier of an origin object, such as a sample or a library, that this cell belongs to, e.g. `SAMPLE_001`. + + **Optional:** + - `cellType`: string - inferred or annotated type, e.g. `T cell`. + - `cluster`: string - clustering labels, e.g. `leiden_res1`. + - `nCounts`: integer - total UMI count (Unique Molecular Identifier), e.g. `1250`. + - `percentMito`: number - percentage of mitochondrial gene expression, e.g. `5.2`. + - `umap`: array of two or three numbers - dimensionality reduction results (Uniform Manifold Approximation and Projection), e.g. `[1.23, 0.45]`. + - `pca`: array of between 2 and 100 numbers - dimensionality reduction results (Principal Component Analysis results), e.g. `[0.12, 0.34]`. + - `tsne`: array of two or three numbers - dimensionality reduction results (t-distributed Stochastic Neighbor Embedding), e.g. `[1.23, 0.45]`. + + **Dynamic:** + - Any additional attributes in a form of key-value pairs, which can vary between different cell objects. + example: + cellId: "GSF123456-AAACCTGAGCGCTCCA-1" + barcode: "AAACCTGAGCGCTCCA-1" + batch: "SAMPLE_001" + cellType: "T cell" + cluster: "leiden_res1" + nCounts: 1250 + percentMito: 5.2 + umap: [ 1.23, 0.45 ] + pca: [ 0.12, 0.34 ] + tsne: [ 1.23, 0.45 ] + assay_custom: "10x 3' v2" CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" + type: object + properties: + data: + items: + $ref: "#/components/schemas/Cell" + type: array + cursor: + type: string + components: + schemas: + Cell: + $ref: "./Cell.yaml" + example: + cursor: "GSF123456-AAAGATGGTTCCTCCA-1" + data: + - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" + barcode: "AAACCTGAGCGCTCCA-1" + batch: "SAMPLE_001" + cellType: "T cell" + cluster: "leiden_res1" + nCounts: 1250 + percentMito: 5.2 + umap: [ 1.23, 0.45 ] + pca: [ 0.12, 0.34 ] + tsne: [ 1.23, 0.45 ] + assay_custom: "10x 3' v2" + - cellId: "GSF222333-AAAGATGGTTCCTCCA-1" + barcode: "AAAGATGGTTCCTCCA-1" + batch: "SAMPLE_001" + cellType: "naive B cell" + nCounts: 340 + pca: [ 0.2, 2.8 ] + primary_custom: "True" + tissue_custom: "blood" CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" + example: + author: author + message: message + version: version + timestamp: 0 + properties: + author: + type: string + message: + type: string + timestamp: + format: int64 + type: integer + version: + readOnly: true + type: string + type: object ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" + example: + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + expression: 1.82 + feature: + genes: MYO9A, + groupingKey: VRSLGGISPSEDRR + gene: gene + description: description + value: + value: 1.82 + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + gene: + type: string + expression: + example: 1.82 + format: double + type: number + feature: + example: + genes: MYO9A, + groupingKey: VRSLGGISPSEDRR + oneOf: + - type: object + - type: string + readOnly: true + value: + example: + value: 1.82 + type: object + patternProperties: + "^.*$": + format: double + oneOf: + - type: number + - type: string # Inf or -Inf + description: + type: string + readOnly: true + type: object ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" + example: + cursor: cursor + data: + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + gene: gene + feature: feature + expression: 1.82 + value: + value: 1.82 + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + gene: gene + feature: feature + expression: 1.82 + value: + value: 1.82 + properties: + data: + items: + $ref: "#/components/schemas/ExpressionItem" + type: array + cursor: + type: string + type: object + components: + schemas: + ExpressionItem: + $ref: "./ExpressionItem.yaml" IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" + type: object ListResponse: - $ref: "./schemas/common/ListResponse.yaml" + example: + data: + - { } + - { } + meta: + pagination: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + meta: + $ref: "#/components/schemas/MetaResponse" + data: + items: + properties: { } + type: object + type: array + type: object + components: + schemas: + MetaResponse: + $ref: "./MetaResponse.yaml" MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" + example: + pagination: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + pagination: + $ref: "#/components/schemas/PaginationInfo" + type: object + components: + schemas: + PaginationInfo: + $ref: "./PaginationInfo.yaml" MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" + type: object MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" + example: + itemId: itemId + metadata: { } + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + type: object PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" + example: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + count: + format: int32 + type: integer + total: + format: int64 + type: integer + offset: + format: int32 + type: integer + limit: + format: int32 + type: integer + type: object RunFilter: - $ref: "./schemas/common/RunFilter.yaml" + items: + type: string + example: runId + type: array RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" + example: + cursor: "1" + data: + - runId: "1" + sampleSourceId: "exp4-human-100well.ATATCCTACTACTTAACTAG" + - runId: "2" + sampleSourceId: "exp4-human-100well.TTACCTAAGTTTGATATATT" + properties: + cursor: + type: string + data: + items: + properties: { } + type: object + type: array + type: object ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" + enum: + - term_id + type: string SignalRun: - $ref: "./schemas/common/SignalRun.yaml" + type: object AFile: - $ref: "./schemas/afile/AFile.yaml" + type: object FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" + example: + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + runId: runId + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + feature: + type: object + properties: + readoutType: + type: string + cellPopulation: + type: string + marker: + type: string + value: + type: object + properties: + value: + type: number + type: object FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + example: + cursor: cursor + data: + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + properties: + data: + items: + $ref: "#/components/schemas/FlowCytometryItem" + type: array + cursor: + type: string + type: object + components: + schemas: + FlowCytometryItem: + $ref: "./FlowCytometryItem.yaml" AttributeInvalidValue: - $ref: "./schemas/integration/AttributeInvalidValue.yaml" + example: + count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + value: + oneOf: + - properties: { } + type: object + - type: string + count: + format: int64 + type: integer + errors: + items: + $ref: "#/components/schemas/ValidationError" + type: array + type: object + components: + schemas: + ValidationError: + $ref: "./ValidationError.yaml" AttributeValidationSummary: - $ref: "./schemas/integration/AttributeValidationSummary.yaml" + example: + attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + attributeName: + type: string + attributeInvalidValues: + items: + $ref: "#/components/schemas/AttributeInvalidValue" + type: array + type: object + components: + schemas: + AttributeInvalidValue: + $ref: "./AttributeInvalidValue.yaml" BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" + description: Request model for getting links by many IDs. + example: + firstType: study + firstIds: + - firstIds + - firstIds + offset: 0 + limit: 0 + properties: + firstType: + description: Type of the objects. + example: study + type: string + firstIds: + description: Array of the object IDs with the same type. + items: + type: string + type: array + uniqueItems: true + offset: + description: 'Param says to skip that many links before beginning to return links. + Default: 0.' + format: int32 + type: integer + limit: + description: 'Param says to limit the count of returned links. Default: 1000.' + format: int32 + type: integer + required: + - firstIds + - firstType + type: object DataItem: - $ref: "./schemas/integration/DataItem.yaml" + properties: + itemId: + type: string + metadata: + type: object + type: object DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + relationships: + $ref: "#/components/schemas/Relationships" + type: object + components: + schemas: + Relationships: + $ref: "./Relationships.yaml" GroupValidationSummary: - $ref: "./schemas/integration/GroupValidationSummary.yaml" + example: + groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + groupAccession: + type: string + attributes: + items: + $ref: "#/components/schemas/AttributeValidationSummary" + type: array + type: object + components: + schemas: + AttributeValidationSummary: + $ref: "./AttributeValidationSummary.yaml" IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" + properties: + source: + format: uri + type: string + name: + type: string + public: + type: boolean + id: + type: string + content: + type: object + dataType: + type: string + contentMap: + type: object + metadataContent: + type: object + fileIdAssociatedWithTemplate: + type: string + type: object Library: - $ref: "./schemas/library/Library.yaml" + type: object Link: - $ref: "./schemas/integration/Link.yaml" + description: Link between two objects. Each of them represented as a unique pair of + ID (accession) and unique type. + example: + firstId: firstId + firstType: firstType + secondId: secondId + secondType: secondType + properties: + firstId: + description: Object ID (accession) (e.g. accession of study) + type: string + firstType: + description: Type of the object (e.g. study) + type: string + secondId: + description: Object ID (accession) (e.g. accession of study) + type: string + secondType: + description: Type of the object (e.g. study) + type: string + type: object MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" + description: |- + A description of object metadata. + + This will contain: + - `genestack:accession`: the object ID + - `Study Title` (for studies) + - `Sample ID` (for samples) + - all other attributes defined in the linked template (if any) + properties: + metadata: + $ref: "#/components/schemas/IMetadata" + relationships: + $ref: "#/components/schemas/Relationships" + type: object + components: + schemas: + IMetadata: + $ref: "./IMetadata.yaml" + Relationships: + $ref: "./Relationships.yaml" OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" + example: + cursor: cursor + data: + - { } + - { } + log: + - log + - log + resultsExhausted: true + properties: + data: + items: + properties: { } + type: object + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" + properties: + data: + items: + $ref: "#/components/schemas/DataPresentation" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + DataPresentation: + $ref: "./DataPresentation.yaml" OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + properties: + data: + items: + $ref: "#/components/schemas/MetadataPresentation" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + MetadataPresentation: + $ref: "./MetadataPresentation.yaml" OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" + properties: + data: + items: + $ref: "#/components/schemas/MetadataWithId" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + MetadataWithId: + $ref: "../common/MetadataWithId.yaml" Preparation: - $ref: "./schemas/preparation/Preparation.yaml" + type: object Relationships: - $ref: "./schemas/integration/Relationships.yaml" + properties: + sample: + readOnly: true + type: string + cell: + readOnly: true + type: string + library: + readOnly: true + type: string + preparation: + readOnly: true + type: string + type: object SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" + example: + firstType: firstType + secondType: secondType + properties: + firstType: + description: Type of the object (e.g. study) + readOnly: true + type: string + secondType: + description: Type of the object (e.g. study) + readOnly: true + type: string + type: object StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" + type: object Study: - $ref: "./schemas/study/Study.yaml" + type: object StudyValidationSummary: - $ref: "./schemas/integration/StudyValidationSummary.yaml" + example: + samples: + - groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + samples: + items: + $ref: "#/components/schemas/GroupValidationSummary" + type: array + type: object + components: + schemas: + GroupValidationSummary: + $ref: "./GroupValidationSummary.yaml" TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" + example: + application: application + createdBy: createdBy + endedAt: 6 + name: name + startedAt: 0 + id: id + status: CREATED + properties: + id: + readOnly: true + type: string + name: + readOnly: true + type: string + status: + enum: + - CREATED + - QUEUEING + - QUEUED + - STARTING + - RUNNING + - DONE + - FAILED + - BLOCKED_BY_DEPENDENCY_FAILURE + - KILLED + readOnly: true + type: string + application: + readOnly: true + type: string + startedAt: + format: int64 + readOnly: true + type: integer + endedAt: + format: int64 + readOnly: true + type: integer + createdBy: + readOnly: true + type: string + type: object ValidationError: - $ref: "./schemas/integration/ValidationError.yaml" + example: + errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + errorType: + enum: + - VALUE_NOT_SET + - VOCABULARY_NOT_FOUND + - TYPE_NOT_MATCH + - MISSING_ATTRIBUTE + - SYNONYM_ATTRIBUTE + type: string + errorMessage: + type: string + type: object SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" + example: + filters: + - type: FULL_TEXT + match: text_to_search + mode: STRICT + - type: SELECT + filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP + page: + offset: 6 + limit: 50 + properties: + filters: + example: + - type: FULL_TEXT + match: text_to_search + mode: STRICT + - type: SELECT + filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP + items: + $ref: "#/components/schemas/AppliedFilter" + type: array + page: + $ref: "#/components/schemas/PageRequest" + type: object + components: + schemas: + AppliedFilter: + $ref: "./AppliedFilter.yaml" + PageRequest: + $ref: "./PageRequest.yaml" AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" + properties: + type: + enum: + - FULL_TEXT + - SELECT + type: string + filterOptionId: + type: string + match: + type: string + mode: + enum: + - STRICT + - USE_NARROWER_TERMS + type: string + type: object PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" + example: + offset: 6 + limit: 50 + properties: + offset: + description: 'Param says to skip that many links before beginning to return links. + Default: 0.' + format: int32 + type: integer + limit: + description: 'Param says to limit the count of returned links. Default: 1000.' + example: 50 + format: int32 + type: integer + type: object FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" + example: + filterOptionGroups: + - filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + objectsPage: + filteredCount: 0 + pageRequest: + offset: 6 + limit: 50 + content: + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + objectsPage: + $ref: "#/components/schemas/ObjectsPage" + filterOptionGroups: + items: + $ref: "#/components/schemas/FilterOptionGroup" + type: array + type: object + components: + schemas: + ObjectsPage: + $ref: "./ObjectsPage.yaml" + FilterOptionGroup: + $ref: "./FilterOptionGroup.yaml" ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" + example: + filteredCount: 0 + pageRequest: + offset: 6 + limit: 50 + content: + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + filteredCount: + format: int64 + type: integer + pageRequest: + $ref: "#/components/schemas/PageRequest" + content: + items: + $ref: "#/components/schemas/StudySearchInfo" + type: array + type: object + components: + schemas: + PageRequest: + $ref: "./PageRequest.yaml" + StudySearchInfo: + $ref: "./StudySearchInfo.yaml" StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" + example: + owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + accession: + type: string + name: + type: string + owner: + type: string + fileCreation: + format: int64 + type: string + size: + format: int64 + type: integer + hasFacs: + type: boolean + hasGenomic: + type: boolean + hasTranscriptomics: + type: boolean + summary: + items: + $ref: "#/components/schemas/MetainfoKeyForSummary" + type: array + type: object + components: + schemas: + MetainfoKeyForSummary: + $ref: "./MetainfoKeyForSummary.yaml" MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" + example: + values: + - values + - values + key: key + properties: + key: + type: string + values: + items: + type: string + type: array + type: object FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" + example: + filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + properties: + filterId: + type: string + hasMoreOptions: + type: boolean + options: + items: + $ref: "#/components/schemas/FilterOption" + type: array + type: object + components: + schemas: + FilterOption: + $ref: "./FilterOption.yaml" FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" + example: + filterId: filterId + name: name + count: 5 + id: id + properties: + id: + type: string + filterId: + type: string + name: + type: string + count: + format: int64 + type: integer + type: object DERequest: - $ref: "./schemas/cell/DERequest.yaml" + type: object + properties: + caseGroup: + $ref: 'CellGroupRequest.yaml' + controlGroup: + $ref: 'CellGroupRequest.yaml' + exQuery: + type: string + example: 'feature=ENSG00000230368,ENSG00000188976' + limit: + type: integer + format: int32 + description: This parameter determines the number of results to retrieve per page, with the default set at 2000. + example: 2000 + offset: + type: integer + format: int32 + description: This parameter allows skipping a specified number of results, with the default set at 0. + example: 0 + required: + - caseGroup + - controlGroup DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" + type: object + properties: + resultsPerGene: + type: array + items: + $ref: '#/components/schemas/GeneEntry' + pagination: + $ref: '#/components/schemas/Pagination' + required: + - resultsPerGene + - pagination + components: + schemas: + GeneEntry: + type: object + # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. + properties: + geneId: + type: string + description: Gene identifier. + example: ENSG00000230368 + caseCellCount: + type: integer + description: Number of cells expressing the gene in the case group. + example: 8450 + controlCellCount: + type: integer + description: Number of cells expressing the gene in the control group. + example: 8123 + caseAvgEx: + type: number + format: double + description: Mean expression level across case cells. + example: 1.24 + controlAvgEx: + type: number + format: double + description: Mean expression level across control cells. + example: 0.62 + exDifference: + type: number + format: double + description: Numerical difference between average expressions. + example: 0.62 + foldChange: + type: number + format: double + description: Ratio of average expressions between case and control groups. + example: 2.0 + log2FC: + type: number + format: double + description: Logarithm with base 2 of the Fold change value. + example: 1.4594316186372973 + mannWhitneyU: + type: number + format: double + description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. + example: 1.5 + pValue: + type: number + format: double + description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. + example: 0.5536169919657803 + required: + - geneId + - caseCellCount + - controlCellCount + - caseAvgEx + - controlAvgEx + - exDifference + - foldChange + - log2FC + - mannWhitneyU + - pValue + Pagination: + type: object + properties: + currentResultsCount: + type: integer + format: int32 + description: Number of results returned in the current response. + example: 1 + limit: + type: integer + format: int32 + description: Results limit, used in the request. + example: 2000 + offset: + type: integer + format: int32 + description: Results offset, used in the request. + example: 0 + required: + - currentResultsCount + - limit + - offset GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" + type: object + properties: + cellGroup: + $ref: 'CellGroupRequest.yaml' + geneNames: + type: array + items: + type: string + example: + - "ENSG00000230368" + - "ENSG00000188976" + - "ENSG00000188982" + exQuery: + type: string + example: '-3 < value < 3' + required: + - geneNames GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" + type: object + properties: + resultsPerGene: + type: array + items: + $ref: '#/components/schemas/GeneSummaryEntry' + components: + schemas: + GeneSummaryEntry: + type: object + description: Per-gene summary statistics. + properties: + geneId: + type: string + description: Gene identifier. + example: "ENSG00000111640" + cellCount: + type: integer + format: int32 + description: Number of cells expressing the gene. + example: 8968167 + mean: + type: number + format: double + description: Mean expression + example: 7.747614311820911 + median: + type: number + format: double + description: Median expression + example: 7 + stdDev: + type: number + format: double + description: Standard deviation + example: 6.499314669429827 + min: + type: number + format: double + description: Minimum value + example: 1 + max: + type: number + format: double + description: Maximum value + example: 496 + quantiles: + type: array + description: | + List of quantile values from 0 to 1 (inclusive), with step 0.1 + example: | + [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] + items: + type: number + format: double + histogram: + type: array + description: | + Histogram as a list of [binStart, binEnd, count] triples. + Length depends of the selected sample size, maximum is 20. + example: | + [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), + (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] + items: + type: array + items: + type: number + format: double CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" + type: object + properties: + cellGroup: + $ref: 'CellGroupRequest.yaml' + exQuery: + type: string + example: '-3 < value < 3' CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" + type: object + required: + - countSelected + - countAvailable + - ratio + properties: + countSelected: + type: integer + format: int32 + description: Count of Cells selected with all queries and filters. + example: 1243393 + countAvailable: + type: integer + format: int32 + description: Count of all available Cells limited by Study and SLP queries and filters. + example: 9234945 + ratio: + type: number + format: double + description: Ratio value + example: 0.13465 ExceptionTypeAndMessage: - $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" + example: + type: type + message: message + properties: + type: + type: string + message: + type: string + type: object ImportCellsRequest: - $ref: "./schemas/job/ImportCellsRequest.yaml" + example: + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv + properties: + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv + type: string + required: + - dataLink + type: object ImportCellsFromMultipartRequest: - $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + data: + type: string + format: binary + required: + - studyId + - data + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportMetadataRequest: - $ref: "./schemas/job/ImportMetadataRequest.yaml" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + templateId: GSF334953 + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + type: string + templateId: + example: GSF334953 + type: string + required: + - metadataLink + type: object ImportMetadataFromMultipartRequest: - $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + templateId: + example: GSF334953 + type: string + metadata: + type: string + format: binary + required: + - studyId + - metadata + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportSignalRunRequest: - $ref: "./schemas/job/ImportSignalRunRequest.yaml" + description: import signal data request + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + templateId: GSF334953 + previousVersion: GSF334953 + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + type: string + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + type: string + templateId: + example: GSF334953 + type: string + previousVersion: + example: GSF334953 + type: string + required: + - dataLink + type: object ImportSignalRunFomMultipartRequest: - $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + metadata: + type: string + format: binary + data: + type: string + format: binary + templateId: + example: GSF334953 + type: string + previousVersion: + example: GSF334953 + type: string + required: + - studyId + - data + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportExpressionSignalRunRequest: - $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" + allOf: + - $ref: "#/components/schemas/ImportSignalRunRequest" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + templateId: GSF334953 + previousVersion: GSF334953 + numberOfFeatureAttributes: 5 + dataClass: Proteomics + measurementSeparator: ':' + properties: + numberOfFeatureAttributes: + description: Integer value that specifies the number of columns related to the + feature in the uploaded data frame, and indicates the starting position of the + sample data. This attribute is not needed if the uploaded file is in GCT format. + example: 5 + type: integer + dataClass: + description: "A mandatory parameter with the following possible values: `Bulk + transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, + pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, + `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, + `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, + `Microbiome / Metagenomics`, `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, + `Document`, `Other`. \nIn case the parameter is not set + the dataClass is automatically defined as `Other`." + example: Proteomics + type: string + measurementSeparator: + description: 'This parameter is necessary when your file contains multiple measurement + columns for each sample, library, or preparation. It represents the character + that distinguishes the sample/library/preparation name from the measurement + name in column headers. Supported separators include `. , : ; _ - / \ |`, with + the allowance for multi-character separators.' + example: ':' + type: string + components: + schemas: + ImportSignalRunRequest: + $ref: "./ImportSignalRunRequest.yaml" ImportExpressionSignalRunFromMultipartRequest: - $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + allOf: + - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + properties: + numberOfFeatureAttributes: + description: Integer value that specifies the number of columns related to the + feature in the uploaded data frame, and indicates the starting position of the + sample data. This attribute is not needed if the uploaded file is in GCT format. + example: 5 + type: integer + dataClass: + description: "A mandatory parameter with the following possible values: `Bulk + transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, + pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, + `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, + `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics`, + `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, + `Document`, `Other`. \nIn case the parameter is not set + the dataClass is automatically defined as `Other`." + example: Proteomics + type: string + measurementSeparator: + description: 'This parameter is necessary when your file contains multiple measurement + columns for each sample, library, or preparation. It represents the character + that distinguishes the sample/library/preparation name from the measurement + name in column headers. Supported separators include `. , : ; _ - / \ |`, with + the allowance for multi-character separators.' + example: ':' + type: string + components: + schemas: + ImportSignalRunFomMultipartRequest: + $ref: "./ImportSignalRunFomMultipartRequest.yaml" ImportAFileRequest: - $ref: "./schemas/job/ImportAFileRequest.yaml" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf + studyAccession: GSF334953 + dataClass: Proteomics + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + type: string + description: Specifies the URL of a metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf + type: string + description: Specifies a link to a file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. + studyAccession: + example: GSF334953 + type: string + dataClass: + example: Proteomics + type: string + description: A mandatory parameter with the value from a limited set of values (see request description). + required: + - dataLink + - studyAccession + - dataClass + type: object ImportAFileFromMultipartRequest: - $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" + properties: + metadata: + type: string + format: binary + description: The metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. + data: + type: string + format: binary + description: A file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. + studyAccession: + example: GSF334953 + type: string + description: An accession of a study the file will be associated with. + dataClass: + example: Proteomics + type: string + description: A mandatory parameter with the value from a limited set of values (see request description). + required: + - data + - studyAccession + - dataClass + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" Info: - $ref: "./schemas/job/Info.yaml" + description: job execution information + example: + jobName: Protein folding + startedBy: job@genestack.com + createTime: 2000-01-23T04:56:07+00:00 + jobExecId: 12345 + endTime: 2000-01-23T04:56:07+00:00 + status: STARTED + properties: + jobExecId: + description: job execution id + example: 12345 + format: int64 + type: integer + startedBy: + description: user name who started the job + example: job@genestack.com + type: string + jobName: + description: actual job name + example: Protein folding + type: string + status: + description: current job status + enum: + - COMPLETED + - STARTING + - RUNNING + - STOPPING + - STOPPED + - FAILED + - ABANDONED + - UNKNOWN + example: STARTED + type: string + createTime: + format: date-time + type: string + endTime: + format: date-time + type: string + required: + - createTime + - jobExecId + - jobName + - startedBy + - status + type: object JobRuntimeError: - $ref: "./schemas/job/JobRuntimeError.yaml" + example: + stack: + - type: type + message: message + - type: type + message: message + stage: stage + properties: + stage: + type: string + stack: + items: + $ref: "#/components/schemas/ExceptionTypeAndMessage" + type: array + type: object + components: + schemas: + ExceptionTypeAndMessage: + $ref: "./ExceptionTypeAndMessage.yaml" Output: - $ref: "./schemas/job/Output.yaml" + description: job execution output + example: + result: { } + errors: + - stack: + - type: type + message: message + - type: type + message: message + stage: stage + - stack: + - type: type + message: message + - type: type + message: message + stage: stage + status: COMPLETED + properties: + status: + description: current job status + enum: + - COMPLETED + - STARTING + - RUNNING + - STOPPING + - STOPPED + - FAILED + - ABANDONED + - UNKNOWN + example: COMPLETED + type: string + result: + description: job result object (available if job completed successfully) + properties: { } + type: object + errors: + description: array of errors occurred during execution of the job (available if + job failed) + items: + $ref: "#/components/schemas/JobRuntimeError" + type: array + required: + - status + type: object + components: + schemas: + JobRuntimeError: + $ref: "./JobRuntimeError.yaml" DetachedCollection: - $ref: "./schemas/manage-data/DetachedCollection.yaml" + example: + cursor: cursor + data: + - createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + - createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + properties: + data: + items: + $ref: "#/components/schemas/DetachedObject" + type: array + cursor: + type: string + required: + - data + type: object + components: + schemas: + DetachedObject: + $ref: "./DetachedObject.yaml" DetachedObject: - $ref: "./schemas/manage-data/DetachedObject.yaml" + example: + createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + detachedObjectType: + enum: + - STUDY + - SAMPLE_GROUP + - LIBRARY_GROUP + - PREPARATION_GROUP + - CELL_GROUP + - TABULAR_DATA + - GENE_VARIANT + - FLOW_CYTOMETRY + type: string + ownerEmail: + type: string + createdAt: + format: date-time + type: string + required: + - createdAt + - detachedObjectType + - genestack:accession + - ownerEmail + type: object ManagedObject: - $ref: "./schemas/manage-data/ManagedObject.yaml" + example: + createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + objectType: objectType + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + objectType: + type: string + ownerEmail: + type: string + createdAt: + format: date-time + type: string + required: + - createdAt + - genestack:accession + - objectType + - ownerEmail + type: object XrefSetCreateRequest: - $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" + description: Create XrefSet request body + example: + metadata: + key: metadata + xrefSetType: gene-transcript + dataLink: '"http://example-url.com/my-mapping.tsv"' + properties: + xrefSetType: + description: Type of data stored in XrefSet + enum: + - gene-transcript + type: string + dataLink: + description: Mapping file link + example: '"http://example-url.com/my-mapping.tsv"' + type: string + metadata: + patternProperties: + "^.*$": + type: string + description: Additional user metadata + type: object + required: + - dataLink + - xrefSetType + type: object XrefSetCreateResponse: - $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" + description: Create XrefSet response body + example: + lastUpdated: 1602838500612 + metadata: + key: metadata + createdDate: 1602838500612 + createdBy: '"User007"' + warnings: + - warnings + - warnings + xrefSetType: gene-transcript + xrefSetId: '"GSF0000013"' + properties: + xrefSetId: + description: Accession of the created XrefSet + example: '"GSF0000013"' + type: string + createdBy: + description: Name of the user created XrefSet + example: '"User007"' + type: string + createdDate: + description: Date of XrefSet creation + example: 1602838500612 + format: int64 + type: integer + lastUpdated: + description: Date of XrefSet last update. For a new entity lastUpdated = createdDate + example: 1602838500612 + format: int64 + type: integer + xrefSetType: + description: Type of data stored in XrefSet + enum: + - gene-transcript + type: string + metadata: + patternProperties: + "^.*$": + type: string + description: Additional user metadata + type: object + warnings: + description: Warnings, if any + items: + type: string + type: array + required: + - createdBy + - createdDate + - lastUpdated + - metadata + - warnings + - xrefSetId + - xrefSetType + type: object XrefSetMetadata: - $ref: "./schemas/reference-data/XrefSetMetadata.yaml" + description: Xrefset metadata + example: + lastUpdated: 1594846270242 + createdDate: 1594846270242 + data: + key: data + createdBy: '"Genestack Superuser"' + xrefSetId: '"GSF000477"' + properties: + xrefSetId: + example: '"GSF000477"' + type: string + createdBy: + example: '"Genestack Superuser"' + type: string + createdDate: + example: 1594846270242 + format: int64 + type: integer + lastUpdated: + example: 1594846270242 + format: int64 + type: integer + data: + patternProperties: + "^.*$": + type: string + type: object + type: object XrefSetSearchResult: - $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" + description: Result of a search query for xrefsets + example: + cursor: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' + result: + - sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + - sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + properties: + cursor: + example: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' + type: string + result: + items: + $ref: "XrefSetSearchResultEntry.yaml" + type: array + type: object XrefSetSearchResultEntry: - $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + example: + sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + properties: + xrefSetId: + example: '"GSF0000013"' + type: string + sourceId: + example: '"ENSG00000231103.2"' + type: string + targetIds: + example: '["ENST00000617423.4", "ENST00000334232.8"]' + items: + type: string + type: array + type: object UploadRGRequest: - $ref: "./schemas/reference-genome/UploadRGRequest.yaml" + example: + annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz + organism: Homo sapiens + assembly: GRCh38 + release: "112" + name: Homo sapiens reference genome GRCh38.112 + properties: + annotationUrl: + type: string + format: uri + organism: + type: string + assembly: + type: string + release: + type: string + name: + type: string + required: + - organism + - assembly + - release + type: object AccessionResponse: - $ref: "./schemas/common/AccessionResponse.yaml" + example: + genestack:accession: genestack:accession + properties: + genestack:accession: + type: string + required: + - genestack:accession + type: object RGItem: - $ref: "./schemas/reference-genome/RGItem.yaml" + example: + genestack:accession: GSF000009 + annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz + organism: Homo sapiens + assembly: GRCh38 + release: 112 + name: Homo sapiens reference genome GRCh38.112 + initializationStatus: Complete + createdAt: 2000-01-23T04:56:070Z + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + annotationUrl: + type: string + format: uri + organism: + type: string + assembly: + type: string + release: + type: string + name: + type: string + initializationStatus: + type: string + createdAt: + type: string + ownerEmail: + type: string + type: object Sample: - $ref: "./schemas/sample/Sample.yaml" + type: object Group: - $ref: "./schemas/scim/Group.yaml" + example: + displayName: displayName + schemas: + - urn:ietf:params:scim:schemas:core:2.0:Group + - urn:ietf:params:scim:schemas:core:2.0:Group + members: + - display: display + value: value + - display: display + value: value + externalId: externalId + id: id + properties: + externalId: + description: External unique resource id + type: string + id: + description: Unique resource id + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:schemas:core:2.0:Group + type: string + type: array + members: + items: + $ref: "#/components/schemas/Member" + type: array + displayName: + type: string + required: + - displayName + type: object + components: + schemas: + Member: + $ref: "./Member.yaml" Member: - $ref: "./schemas/scim/Member.yaml" + example: + display: display + value: value + properties: + value: + type: string + display: + type: string + $ref: + description: The URI of the member resource + format: uri + type: string + required: + - $ref + - value + type: object GroupPatch: - $ref: "./schemas/scim/GroupPatch.yaml" + example: + schemas: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + - urn:ietf:params:scim:api:messages:2.0:PatchOp + Operations: + - op: add + path: path + value: { } + - op: add + path: path + value: { } + properties: + Operations: + description: Patch operations list + items: + $ref: "#/components/schemas/PatchOperation" + type: array + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + type: string + type: array + required: + - Operations + - schemas + type: object + components: + schemas: + PatchOperation: + $ref: "./PatchOperation.yaml" PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" + example: + op: add + path: path + value: { } + properties: + op: + enum: + - add + - replace + - remove + type: string + path: + type: string + value: + description: Corresponding 'value' of that field specified by 'path' + properties: { } + type: object + required: + - op + type: object FilterGroupsResponse: - $ref: "./schemas/scim/FilterGroupsResponse.yaml" + properties: + Resources: + description: List of groups + items: + $ref: "#/components/schemas/GroupResponse" + type: array + itemsPerPage: + format: int64 + type: integer + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:ListResponse + type: string + type: array + startIndex: + format: int64 + type: integer + totalResults: + format: int64 + type: integer + type: object + components: + schemas: + GroupResponse: + $ref: "./GroupResponse.yaml" GroupResponse: - $ref: "./schemas/scim/GroupResponse.yaml" + allOf: + - $ref: "#/components/schemas/Group" + - properties: + meta: + $ref: "#/components/schemas/Meta" + type: object + components: + schemas: + Group: + $ref: "./Group.yaml" + Meta: + $ref: "./Meta.yaml" Meta: - $ref: "./schemas/scim/Meta.yaml" + description: resource metadata + properties: + created: + format: date-time + type: string + lastModified: + format: date-time + type: string + resourceType: + enum: + - User + - Group + type: string + type: object SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" + properties: + detail: + description: Detailed error message + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:Error + type: string + type: array + scimType: + description: Bad request type when status code is 400 + enum: + - uniqueness + - tooMany + - mutability + - sensitive + - invalidSyntax + - invalidFilter + - invalidPath + - invalidValue + - invalidVers + - noTarget + type: string + status: + description: Same as HTTP status code, e.g. 400, 403, etc. + type: string + required: + - status + type: object + BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" + properties: + error: + $ref: "#/components/schemas/ErrorMessage" + required: + - error + type: object + components: + schemas: + ErrorMessage: + $ref: "./ErrorMessage.yaml" + ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" + properties: + message: + description: Detailed error message + type: string + required: + - message + type: object + User: - $ref: "./schemas/scim/User.yaml" + example: + emails: + - type: work + value: value + primary: true + - type: work + value: value + primary: true + displayName: displayName + schemas: + - urn:ietf:params:scim:schemas:core:2.0:User + - urn:ietf:params:scim:schemas:core:2.0:User + active: true + externalId: externalId + id: id + userName: userName + properties: + active: + description: User status + type: boolean + emails: + items: + $ref: "#/components/schemas/Email" + type: array + externalId: + description: External unique resource id + type: string + id: + description: Unique resource id + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:schemas:core:2.0:User + type: string + type: array + userName: + type: string + displayName: + type: string + required: + - active + - displayName + - emails + type: object + components: + schemas: + Email: + $ref: "./Email.yaml" + Email: - $ref: "./schemas/scim/Email.yaml" + example: + type: work + value: value + primary: true + properties: + type: + enum: + - work + type: string + value: + type: string + primary: + type: boolean + type: object + UserPatch: - $ref: "./schemas/scim/UserPatch.yaml" + example: + schemas: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + - urn:ietf:params:scim:api:messages:2.0:PatchOp + Operations: + - op: add + path: path + value: { } + - op: add + path: path + value: { } + properties: + Operations: + description: Patch operations list + items: + $ref: "#/components/schemas/PatchOperation" + type: array + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + type: string + type: array + required: + - Operations + - schemas + type: object + components: + schemas: + PatchOperation: + $ref: "./PatchOperation.yaml" + FilterUsersResponse: - $ref: "./schemas/scim/FilterUsersResponse.yaml" + properties: + Resources: + description: List of users + items: + $ref: "#/components/schemas/UserResponse" + type: array + itemsPerPage: + format: int64 + type: integer + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:ListResponse + type: string + type: array + startIndex: + format: int64 + type: integer + totalResults: + format: int64 + type: integer + type: object + components: + schemas: + UserResponse: + $ref: "./UserResponse.yaml" + UserResponse: - $ref: "./schemas/scim/UserResponse.yaml" + allOf: + - $ref: "#/components/schemas/User" + - properties: + meta: + $ref: "#/components/schemas/Meta" + type: object + components: + schemas: + User: + $ref: "./User.yaml" + Meta: + $ref: "./Meta.yaml" + VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" + example: + itemId: itemId + metadata: { } + annotation: { } + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + annotation: + type: object + referenceGenome: + type: object + type: object + VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" + example: + ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: A + alt: + - GC + - GAATTTA + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + variant: + type: object + properties: + chrom: + type: string + pos: + format: int64 + type: integer + id: + type: array + items: + type: string + ref: + type: string + alt: + type: array + items: + type: string + qual: + type: number + filter: + type: array + items: + type: string + info: + type: object + patternProperties: + "^.*$": + type: array + items: + oneOf: + - type: string + - type: number + genotype: + type: object + patternProperties: + "^.*$": + type: string + type: object + VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" + example: + cursor: cursor + data: + - ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: reference + alt: + - alteration + - alteration + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + - ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: reference + alt: + - alteration + - alteration + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + properties: + data: + items: + $ref: "#/components/schemas/VariantItem" + type: array + cursor: + type: string + type: object + components: + schemas: + VariantItem: + $ref: "VariantItem.yaml" securitySchemes: Access-token: in: "header" diff --git a/openapi/v1/odmApi.json b/openapi/v1/odmApi.json deleted file mode 100644 index ef5ec235..00000000 --- a/openapi/v1/odmApi.json +++ /dev/null @@ -1,21233 +0,0 @@ -{ - "openapi" : "3.1.0", - "info" : { - "description" : "This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata.\n\nBefore carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software.\n\nTo try out calls in this swagger page:\n\n1. Click the 'Authorize' button below to enter your API token\n2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button\n3. Enter parameter values that you wish to try\n4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears\n\n\n The server response will be in the section that follows.", - "title" : "ODM API", - "version" : "default-released" - }, - "tags" : [ { - "name" : "Cells as Curator" - }, { - "name" : "Cells as User" - }, { - "name" : "Expression SPoT as Curator" - }, { - "name" : "Expression SPoT as User" - }, { - "name" : "Files as Curator" - }, { - "name" : "Files as User" - }, { - "name" : "Flow Cytometry SPoT as Curator" - }, { - "name" : "Flow Cytometry SPoT as User" - }, { - "name" : "Cell integration as Curator" - }, { - "name" : "Expression integration as Curator" - }, { - "name" : "Files integration as Curator" - }, { - "name" : "Flow Cytometry (FACS) integration as Curator" - }, { - "name" : "Library integration as Curator" - }, { - "name" : "Linkage as Curator" - }, { - "name" : "Metadata versioning as Curator" - }, { - "name" : "Omics queries as Curator" - }, { - "name" : "Preparation integration as Curator" - }, { - "name" : "Sample integration as Curator" - }, { - "name" : "Study integration as Curator" - }, { - "name" : "Validation summary as Curator" - }, { - "name" : "Variant integration as Curator" - }, { - "name" : "Expression integration as User" - }, { - "name" : "Files integration as User" - }, { - "name" : "Flow Cytometry (FACS) integration as User" - }, { - "name" : "Library integration as User" - }, { - "name" : "Linkage as User" - }, { - "name" : "Omics queries as User" - }, { - "name" : "Preparation integration as User" - }, { - "name" : "Sample integration as User" - }, { - "name" : "Study integration as User" - }, { - "name" : "Variant integration as User" - }, { - "name" : "Data import jobs" - }, { - "name" : "Data import via direct file upload" - }, { - "name" : "Job operations" - }, { - "name" : "Library SPoT as Curator" - }, { - "name" : "Library SPoT as User" - }, { - "name" : "Manage Data" - }, { - "name" : "Preparation SPoT as Curator" - }, { - "name" : "Preparation SPoT as User" - }, { - "name" : "Xrefset queries" - }, { - "name" : "Reference genome" - }, { - "name" : "Sample SPoT as Curator" - }, { - "name" : "Sample SPoT as User" - }, { - "name" : "Groups" - }, { - "name" : "Users" - }, { - "name" : "Study SPoT as Curator" - }, { - "name" : "Study SPoT as User" - }, { - "name" : "Tasks API" - }, { - "name" : "Variant SPoT as Curator" - }, { - "name" : "Variant SPoT as User" - } ], - "paths" : { - "/api/v1/as-curator/cells/{id}" : { - "get" : { - "operationId" : "getCellByIdAsCurator", - "parameters" : [ { - "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Cell" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided ID could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a cell by ID", - "tags" : [ "Cells as Curator" ] - } - }, - "/api/v1/as-curator/cells/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", - "operationId" : "getCellsByGroupAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the cell group.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CellListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Cell data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cells from a given group", - "tags" : [ "Cells as Curator" ] - } - }, - "/api/v1/as-user/cells/{id}" : { - "get" : { - "operationId" : "getCellByIdAsUser", - "parameters" : [ { - "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Cell" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided ID could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a cell by ID", - "tags" : [ "Cells as User" ] - } - }, - "/api/v1/as-user/cells/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", - "operationId" : "getCellsByGroupAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the cell group.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CellListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Cell data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cells from a given group", - "tags" : [ "Cells as User" ] - } - }, - "/api/v1/as-curator/expressions" : { - "get" : { - "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getExpressionDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minExpressionLevel", - "schema" : { - "format" : "double", - "type" : "number" - } - }, { - "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionResponse" - } - } - }, - "description" : "Retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Expression data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple expression data and metadata objects", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchExpressionGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group/by/run/{id}" : { - "get" : { - "operationId" : "getExpressionGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group/{id}" : { - "get" : { - "operationId" : "getExpressionGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression group by ID (groupId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchExpressionRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/{id}" : { - "get" : { - "operationId" : "getExpressionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by ID (itemId)", - "tags" : [ "Expression SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateExpressionRunAsCurator", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update metadata object by expression object run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/expressions/{id}/versions" : { - "get" : { - "operationId" : "getExpressionVersionsAsCurator", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of expression object versions by run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/{id}/versions/{version}" : { - "get" : { - "operationId" : "getExpressionByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the expression object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by run ID and its version", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-user/expressions" : { - "get" : { - "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getExpressionDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minExpressionLevel", - "schema" : { - "format" : "double", - "type" : "number" - } - }, { - "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionResponse" - } - } - }, - "description" : "Retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Expression data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple expression data and metadata objects", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchExpressionGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group/by/run/{id}" : { - "get" : { - "operationId" : "getExpressionGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group/{id}" : { - "get" : { - "operationId" : "getExpressionGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression group by ID (groupId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchExpressionRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}" : { - "get" : { - "operationId" : "getExpressionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by ID (itemId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}/versions" : { - "get" : { - "operationId" : "getExpressionVersionsAsUser", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of expression object versions by run ID (runId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}/versions/{version}" : { - "get" : { - "operationId" : "getExpressionByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by run ID and its version", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-curator/files/{id}/download" : { - "head" : { - "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", - "operationId" : "headFileAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "File exists. Additional metadata is provided in the response headers." - }, - "400" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "tags" : [ "Files as Curator" ] - }, - "get" : { - "description" : "Download a file by its accession.\n", - "operationId" : "getFileAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "name" : "Range", - "in" : "header", - "required" : false, - "schema" : { - "type" : "string", - "example" : "bytes=0-" - }, - "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" - } ], - "responses" : { - "200" : { - "description" : "File downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "206" : { - "description" : "Partial content downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "File cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a file by ID (accession)", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-curator/files/{id}" : { - "get" : { - "operationId" : "getFileMetadataByIdAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AFile" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by ID (accession)", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-curator/files" : { - "get" : { - "operationId" : "getFilesMetadataAsCurator", - "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", - "parameters" : [ { - "in" : "query", - "name" : "filter", - "description" : "Filter by files metadata (key-value metadata pair(s)).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for files via a full-text query over all file metadata.", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "includeContents", - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by its fields", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-user/files/{id}/download" : { - "head" : { - "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", - "operationId" : "headFileAsUser", - "summary" : "Check if a file exists by ID (accession).", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "File exists. Additional metadata is provided in the response headers." - }, - "400" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "tags" : [ "Files as User" ] - }, - "get" : { - "description" : "Download a file by its accession.\n", - "operationId" : "getFileAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "name" : "Range", - "in" : "header", - "required" : false, - "schema" : { - "type" : "string", - "example" : "bytes=0-" - }, - "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" - } ], - "responses" : { - "200" : { - "description" : "File downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "206" : { - "description" : "Partial content downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "File cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a file by ID (accession)", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-user/files/{id}" : { - "get" : { - "operationId" : "getFileMetadataByIdAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AFile" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by ID (accession)", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-user/files" : { - "get" : { - "operationId" : "getFilesMetadataAsUser", - "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", - "parameters" : [ { - "in" : "query", - "name" : "filter", - "description" : "Filter by files metadata (key-value metadata pair(s)).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for files via a full-text query over all file metadata.", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "includeContents", - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by its fields", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-curator/flow-cytometries" : { - "get" : { - "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getFlowCytometryDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", - "in" : "query", - "name" : "readoutType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", - "in" : "query", - "name" : "population", - "schema" : { - "type" : "string" - } - }, { - "description" : "Marker value. E.g.: `PD1`, `BV786`", - "in" : "query", - "name" : "marker", - "schema" : { - "type" : "string" - } - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minValue", - "schema" : { - "type" : "number" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryResponse" - } - } - }, - "description" : "Retrieved Flow Cytometry data." - }, - "400" : { - "content" : { }, - "description" : "Flow Cytometry data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple flow cytometry data and metadata objects", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchFlowCytometryGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group/by/run/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchFlowCytometryRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/{id}" : { - "get" : { - "operationId" : "getFlowCytometryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateFlowCytometryAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update object metadata", - "tags" : [ "Flow Cytometry SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/flow-cytometries/{id}/versions" : { - "get" : { - "operationId" : "getFlowCytometryVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getFlowCytometryByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-user/flow-cytometries" : { - "get" : { - "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getFlowCytometryDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", - "in" : "query", - "name" : "readoutType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", - "in" : "query", - "name" : "population", - "schema" : { - "type" : "string" - } - }, { - "description" : "Marker value. E.g.: `PD1`, `BV786`", - "in" : "query", - "name" : "marker", - "schema" : { - "type" : "string" - } - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minValue", - "schema" : { - "type" : "number" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryResponse" - } - } - }, - "description" : "Retrieved Flow Cytometry data." - }, - "400" : { - "content" : { }, - "description" : "Flow Cytometry data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple flow cytometry data and metadata objects", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchFlowCytometryGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group/by/run/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchFlowCytometryRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}" : { - "get" : { - "operationId" : "getFlowCytometryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}/versions" : { - "get" : { - "operationId" : "getFlowCytometryVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getFlowCytometryByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-curator/data-types" : { - "get" : { - "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", - "operationId" : "getDataTypesAsCurator", - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Lists all available data types.", - "tags" : [ "Linkage as Curator" ] - } - }, - "/api/v1/as-curator/data-types/links" : { - "get" : { - "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", - "operationId" : "getDataTypesLinksAsCurator", - "parameters" : [ { - "description" : "Return only links with the specified data type.", - "in" : "query", - "name" : "type", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/SourceTypePair" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List all possible links between data types that match the specified criteria.", - "tags" : [ "Linkage as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/library/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByLibraryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related library ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/preparation/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByPreparation", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getExpressionGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}" : { - "post" : { - "description" : "Create a link between a group of cell expression objects and a group of cell metadata.\n\nA cell expression object can be linked to one cell metadata object only.", - "operationId" : "createExpressionGroupCellGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell expression group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the cell metadata group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) cell links were created." - }, - "204" : { - "content" : { }, - "description" : "All links were created." - }, - "400" : { - "content" : { }, - "description" : "Incorrect Cell or Expression group provided, see error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of cell expression objects and a group of cell metadata.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of library objects", - "operationId" : "deleteExpressionGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of library objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of library objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) sample links created." - }, - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Library group, signal group or libraries to link not found" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of library objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of preparation objects", - "operationId" : "deleteExpressionGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of preparation objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of preparation objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) sample links created." - }, - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Preparation group, signal group or preparations to link not found" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of preparation objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of sample objects", - "operationId" : "deleteExpressionGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of sample objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of sample objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createExpressionGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "400" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of sample objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToLibraryPairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToPreparationPairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a library", - "operationId" : "deleteExpressionLibraryLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a library", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a library.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionLibraryLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a library", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a preparation", - "operationId" : "deleteExpressionPreparationLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a preparation", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a preparation.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionPreparationLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a preparation", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a sample", - "operationId" : "deleteExpressionSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a sample", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a sample.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a sample", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getFlowCytometryGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of flow-cytometry objects and a group of sample objects", - "operationId" : "deleteFlowCytometryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of flow-cytometry objects and a group of sample objects", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of flow-cytometry objects and a group of sample objects.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.\n\nUsers can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createFlowCytometryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of flow-cytometry objects and a group of sample objects", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between a flow-cytometry object and a sample", - "operationId" : "deleteFlowCytometrySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level data block", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a flow-cytometry object and a sample", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a flow-cytometry object and a sample.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.", - "operationId" : "createFlowCytometrySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level data block", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a flow-cytometry object and a sample", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/libraries/by/samples" : { - "get" : { - "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibrariesBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related samples", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/by/sample/{id}" : { - "get" : { - "operationId" : "getLibraryBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related sample ID (accession)", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/group/by/study/{id}" : { - "get" : { - "operationId" : "getLibraryGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete links between samples and libraries related to the specified group", - "operationId" : "deleteLibraryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete links between samples and libraries related to the specified group", - "tags" : [ "Library integration as Curator" ] - }, - "post" : { - "description" : "Create links between samples and libraries.\n\nLibrary objects of the same group can only be linked to objects of the same study.", - "operationId" : "createLibraryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between samples and libraries", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibraryLinksToSamplesAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete a link between a library and a sample", - "operationId" : "deleteLibrarySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a link between a library and a sample", - "tags" : [ "Library integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a library and a sample.\n\nLibrary objects of the same group can only be linked to objects of the same study.", - "operationId" : "createLibrarySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a library and a sample", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/by/sample/{id}" : { - "get" : { - "operationId" : "getPreparationBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/group/by/study/{id}" : { - "get" : { - "operationId" : "getPreparationGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete links between samples and preparations related to the specified group", - "operationId" : "deletePreparationGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete links between samples and preparations related to the specified group", - "tags" : [ "Preparation integration as Curator" ] - }, - "post" : { - "description" : "Create links between samples and preparations.\n\nPreparation objects of the same group can only be linked to objects of the same study.", - "operationId" : "createPreparationGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between samples and preparations", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationLinksToSamplesAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete a link between a preparation and a sample", - "operationId" : "deletePreparationSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a link between a preparation and a sample", - "tags" : [ "Preparation integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a preparation and a sample.\n\nPreparation objects of the same group can only be linked to objects of the same study.", - "operationId" : "createPreparationSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a preparation and a sample", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparations/by/samples" : { - "get" : { - "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationsBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related samples", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of sample objects and a study", - "operationId" : "deleteSampleGroupStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of sample objects and a study", - "tags" : [ "Sample integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of sample objects and a study.\n\nSample objects of the same group can only be linked to the same study.", - "operationId" : "createSampleGroupStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of sample objects and a study", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}" : { - "delete" : { - "description" : "Delete link between a sample and a study", - "operationId" : "deleteSampleStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a sample and a study", - "tags" : [ "Sample integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a sample and a study.\n\nSample objects of the same group can only be linked to the same study.", - "operationId" : "createSampleStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a sample and a study", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/libraries" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related libraries", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/preparations" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related preparations", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/study/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related study ID (accession)", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/libraries" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related libraries", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/preparations" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related preparations", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/samples" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related samples", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/study/by/sample/{id}" : { - "get" : { - "operationId" : "getStudyBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying sample ID (accession)", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/files" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByFilesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related attachment files", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/study/by/file/{id}" : { - "get" : { - "operationId" : "getStudyByFileAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying attachment file ID (accession)", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getVariantGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of variant objects and a group of sample objects", - "operationId" : "deleteVariantGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of variant objects and a group of sample objects", - "tags" : [ "Variant integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of variant objects and a group of sample objects.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createVariantGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of variant objects and a group of sample objects", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between a variant object and a sample", - "operationId" : "deleteVariantSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a variant object and a sample", - "tags" : [ "Variant integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a variant object and a sample.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.", - "operationId" : "createVariantSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a variant object and a sample", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/fulltext/search/studies" : { - "post" : { - "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", - "operationId" : "searchStudiesByFilterAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SearchStudyRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FindObjectsResponse" - } - } - }, - "description" : "The request was successful. Retrieved studies and filters." - }, - "400" : { - "content" : { }, - "description" : "Invalid request body" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Find and retrieve studies by full-text or facet query", - "tags" : [ "Study integration as Curator" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-curator/links" : { - "delete" : { - "description" : "This method should be used in case you want to delete the links of an object. Please, keep in mind that deleting a link between Study and Sample will not delete a link between corresponding Sample and it’s signal.", - "operationId" : "deleteLinkAsCurator", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link has been successfully deleted." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No links were found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Deletes existing links matching the specified criteria.", - "tags" : [ "Linkage as Curator" ] - }, - "get" : { - "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", - "operationId" : "getLinksByParamsAsCurator", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Param says to skip that many links before beginning to return links.", - "in" : "query", - "name" : "offset", - "schema" : { - "default" : 0, - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Param says to limit the count of returned links.", - "in" : "query", - "name" : "limit", - "schema" : { - "default" : 1000, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links matching the specified criteria.", - "tags" : [ "Linkage as Curator" ] - }, - "post" : { - "description" : "This method should be used only in case you need to create links between 2 objects. Links are created both ways (e.g. when linking Object A to Object B it can be done both ways, by linking firstType to secondType and vice versa).", - "operationId" : "saveLinksAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Link" - }, - "type" : "array" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { }, - "description" : "Links were updated or not modified." - }, - "201" : { - "content" : { }, - "description" : "At least one new link has been created.Some other links might have been updated or not modified." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "409" : { - "content" : { }, - "description" : "Link cannot be created due to conflict with existing link" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Creates new links between objects.", - "tags" : [ "Linkage as Curator" ], - "x-codegen-request-body-name" : "links" - } - }, - "/api/v1/as-curator/links/get-batch" : { - "post" : { - "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", - "operationId" : "getLinksByIdsAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/BatchOfIds" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", - "tags" : [ "Linkage as Curator" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-curator/omics/cells" : { - "get" : { - "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsAsCurator", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve Cell objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/cells/expression/data" : { - "get" : { - "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsExpressionDataAsCurator", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cell expression objects by searching across multiple metadata types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/data" : { - "get" : { - "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedExpressionDataAsCurator", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Accession of the expression group object (GCT)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", - "in" : "query", - "name" : "roundDigits", - "schema" : { - "default" : 4, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/csv" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given tabular file", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/flow-cytometry/data" : { - "get" : { - "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/flow-cytometry/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchSamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/data" : { - "get" : { - "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique identifier (accession) of Reference Genome object.", - "in" : "query", - "name" : "referenceGenomeId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedVariantDataAsCurator", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Accession of the variant group object (VCF)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Variant data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given VCF file", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/cell-ratio" : { - "post" : { - "operationId" : "cellRatioAsCurator", - "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRResponse" - } - } - }, - "description" : "Cell ratio result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/differential-expression" : { - "post" : { - "operationId" : "differentialExpressionAsCurator", - "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DERequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DEResponse" - } - } - }, - "description" : "Differential expression result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/gene-summary" : { - "post" : { - "operationId" : "geneSummaryAsCurator", - "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "required" : true, - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSRequest" - } - } - } - }, - "responses" : { - "200" : { - "description" : "Gene summary result", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSResponse" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/integration/studies/{id}/tasks/publish-versions" : { - "post" : { - "description" : "This endpoint publishes information from drafts and creates new metadata versions for the specified study and all associated objects. The version name is set to “Auto-published by API call”. Only curators with access to the specified studies can use this method.", - "operationId" : "publishStudyByAccessionAsCurator", - "parameters" : [ { - "description" : "Supply the accession of the study to be published", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", - "in" : "query", - "name" : "versionMessage", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Forbidden" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Asynchronous task that publishes all pending versions for a single study.", - "tags" : [ "Metadata versioning as Curator" ] - } - }, - "/api/v1/as-curator/integration/studies/{id}/validation-summary" : { - "get" : { - "operationId" : "getStudyValidationSummary", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/StudyValidationSummary" - } - } - }, - "description" : "Study validation result." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve validation summary by querying study ID (accession)", - "tags" : [ "Validation summary as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/files/by/study/{id}" : { - "get" : { - "operationId" : "getFilesByStudyAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by study ID", - "tags" : [ "Files integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and samples.\n\nCell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study.", - "operationId" : "createCellGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to samples." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to samples." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or samples to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and samples", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and libraries.\n\nCell objects of the same group can be linked to library objects from multiple library groups, but only within the same study.", - "operationId" : "createCellGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to libraries." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to libraries." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or libraries to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and libraries", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and preparations.\n\nCell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study.", - "operationId" : "createCellGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to preparations." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to preparations." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or preparations to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and preparations", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-user/data-types" : { - "get" : { - "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", - "operationId" : "getDataTypesAsUser", - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Lists all available data types.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/data-types/links" : { - "get" : { - "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", - "operationId" : "getDataTypesLinksAsUser", - "parameters" : [ { - "description" : "Return only links with the specified data type.", - "in" : "query", - "name" : "type", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/SourceTypePair" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List all possible links between data types that match the specified criteria.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/library/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByLibraryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related library ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/preparation/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByPreparationAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getExpressionGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToLibraryPairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToPreparationPairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getFlowCytometryGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/libraries/by/samples" : { - "get" : { - "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibrariesBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related samples", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/by/sample/{id}" : { - "get" : { - "operationId" : "getLibraryBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related sample ID (accession)", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/group/by/study/{id}" : { - "get" : { - "operationId" : "getLibraryGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibraryLinksToSamplesAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/by/sample/{id}" : { - "get" : { - "operationId" : "getPreparationBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/group/by/study/{id}" : { - "get" : { - "operationId" : "getPreparationGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationLinksToSamplesAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparations/by/samples" : { - "get" : { - "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationsBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related samples", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/libraries" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related libraries", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/preparations" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related preparations", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/study/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related study ID (accession)", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/libraries" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related libraries", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/preparations" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related preparations", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/samples" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related samples", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/study/by/sample/{id}" : { - "get" : { - "operationId" : "getStudyBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying sample ID (accession)", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/files" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByFilesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related attachment files", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/study/by/file/{id}" : { - "get" : { - "operationId" : "getStudyByFileAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying attachment file ID (accession)", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/fulltext/search/studies" : { - "post" : { - "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", - "operationId" : "searchStudiesByFilterAsUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SearchStudyRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FindObjectsResponse" - } - } - }, - "description" : "The request was successful. Retrieved studies and filters." - }, - "400" : { - "content" : { }, - "description" : "Invalid request body" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Find and retrieve studies by full-text or facet query", - "tags" : [ "Study integration as User" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-user/integration/link/variant/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/integration/link/variant/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getVariantGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/links" : { - "get" : { - "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", - "operationId" : "getLinksByParamsAsUser", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Param says to skip that many links before beginning to return links.", - "in" : "query", - "name" : "offset", - "schema" : { - "default" : 0, - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Param says to limit the count of returned links.", - "in" : "query", - "name" : "limit", - "schema" : { - "default" : 1000, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links matching the specified criteria.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/links/get-batch" : { - "post" : { - "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", - "operationId" : "getLinksByIdsAsUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/BatchOfIds" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", - "tags" : [ "Linkage as User" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-user/omics/cells" : { - "get" : { - "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsAsUser", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve Cell objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/cells/expression/data" : { - "get" : { - "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsExpressionDataAsUser", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cell expression objects by searching across multiple metadata types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/data" : { - "get" : { - "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n \n\n## Error Handling\n In case of unexpected internal error during data retrieval, the last line of the body will contain an error message, prefixed by the `#` character \n\n", - "operationId" : "omicsSearchStreamedExpressionDataAsUser", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Accession of the expression group object (GCT)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", - "in" : "query", - "name" : "roundDigits", - "schema" : { - "default" : 4, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/csv" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given tabular file", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/flow-cytometry/data" : { - "get" : { - "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/flow-cytometry/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchSamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/data" : { - "get" : { - "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique identifier (accession) of Reference Genome object.", - "in" : "query", - "name" : "referenceGenomeId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedVariantDataAsUser", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Accession of the variant group object (VCF)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Variant data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given VCF file", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/cells/analytics/cell-ratio" : { - "post" : { - "operationId" : "cellRatioAsUser", - "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRResponse" - } - } - }, - "description" : "Cell ratio result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/omics/cells/analytics/differential-expression" : { - "post" : { - "operationId" : "differentialExpressionAsUser", - "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DERequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DEResponse" - } - } - }, - "description" : "Differential expression result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/omics/cells/analytics/gene-summary" : { - "post" : { - "operationId" : "geneSummaryAsUser", - "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "required" : true, - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSRequest" - } - } - } - }, - "responses" : { - "200" : { - "description" : "Gene summary result", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSResponse" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/integration/link/files/by/study/{id}" : { - "get" : { - "operationId" : "getFilesByStudyAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by study ID", - "tags" : [ "Files integration as User" ] - } - }, - "/api/v1/jobs/import/study" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportStudy", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import study metadata from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/samples" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportSamples", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of sample metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/samples/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportSamplesMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of sample metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/libraries" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportLibraries", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - }, - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of library metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/libraries/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportLibrariesMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of library metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/preparations" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportPreparations", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of preparation metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/preparations/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportPreparationsMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of preparation metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/cells" : { - "post" : { - "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", - "operationId" : "startImportCells", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportCellsRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of cell data objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/cells/multipart" : { - "post" : { - "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", - "operationId" : "startImportCellsMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportCellsFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of cell data objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/expression" : { - "post" : { - "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", - "operationId" : "startImportExpression", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportExpressionSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import any tabular data from TSV or GCT files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/expression/multipart" : { - "post" : { - "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", - "operationId" : "startImportExpressionMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import any tabular data from TSV or GCT files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/variant" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", - "operationId" : "startImportVariant", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import variation data and metadata from VCF and TSV files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/variant/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", - "operationId" : "startImportVariantMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import variation data and metadata from VCF and TSV files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/flow-cytometry" : { - "post" : { - "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportFlowCytometry", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import flow-cytometry data and metadata from FACS and TSV files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/flow-cytometry/multipart" : { - "post" : { - "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportFlowCytometryMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/file" : { - "post" : { - "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link.\n* `dataLink` - a link to a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadataLink` - an optional URL of a metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportAFile", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportAFileRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import file as an attachment", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/file/multipart" : { - "post" : { - "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `data` - a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadata` - an optional metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportAFileMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportAFileFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import file as an attachment via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/{jobExecId}/info" : { - "get" : { - "operationId" : "info", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "get information about one particular job execution", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/output" : { - "get" : { - "operationId" : "output", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Output" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "retrieve job output (result)", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/restart" : { - "put" : { - "operationId" : "restart", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "restart stopped (failed) job", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/stop" : { - "put" : { - "operationId" : "stop", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "stop running job", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/as-curator/libraries" : { - "get" : { - "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for library metadata objects", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/by/group/{id}" : { - "get" : { - "operationId" : "getLibrariesByGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve libraries related to the given group", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/{id}" : { - "get" : { - "operationId" : "getLibraryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateLibraryAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a library object", - "tags" : [ "Library SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/libraries/{id}/versions" : { - "get" : { - "operationId" : "getLibraryVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getLibraryByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-user/libraries" : { - "get" : { - "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for library metadata objects", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/by/group/{id}" : { - "get" : { - "operationId" : "getLibrariesByGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve libraries related to the given group", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}" : { - "get" : { - "operationId" : "getLibraryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}/versions" : { - "get" : { - "operationId" : "getLibraryVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getLibraryByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/manage-data/detached-objects" : { - "get" : { - "description" : "Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'.\nStudy is considered as detached object itself in case there are no links to objects at a lower level.\nData with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter.\nThe detached objects are sorted according to their `detachedObjectType` and `genestack:accession`.\nSpecific ordering can be observed in the list of supported detached types found below.\nPagination of the results can be conveniently managed using the `cursor` and `limit` parameters.\n Supported types of detached objects (listed in the order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n\n", - "operationId" : "getDetachedObjects", - "parameters" : [ { - "description" : "Filter by detached object type. Multiple values can be used to filter the data.", - "explode" : true, - "in" : "query", - "name" : "detachedObjectType", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "limit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "This parameter enables retrieval of objects starting from a specific point.\n Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DetachedCollection" - } - } - }, - "description" : "Retrieved detached data." - }, - "400" : { - "content" : { }, - "description" : "Detached data cannot be retrieved due to Bad Request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of detached objects", - "tags" : [ "Manage Data" ] - } - }, - "/api/v1/manage-data/data" : { - "delete" : { - "description" : "The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n * `FILE`\n\n Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules:\n * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group.\n * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group).\n * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM.\n * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups.\n * If you delete `FILE`, the file will be removed from ODM.", - "operationId" : "deleteData", - "parameters" : [ { - "description" : "Accessions files to be deleted.", - "explode" : false, - "in" : "query", - "name" : "accessions", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - } ], - "responses" : { - "202" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/ManagedObject" - }, - "type" : "array" - } - } - }, - "description" : "The deletion of the following files and all linked data has started." - }, - "400" : { - "content" : { }, - "description" : "Deletion could not be performed due to Bad Request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method or the file is not meant to be deleted." - }, - "404" : { - "content" : { }, - "description" : "Some of the provided accessions could not be found in ODM. Deletion will not be preformed. Please review your list and repeat the attempt." - }, - "406" : { - "content" : { }, - "description" : "Some of the provided accessions do not belong to the supported object types. Deletion will not be performed. Please review your list and repeat the attempt." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete objects from ODM", - "tags" : [ "Manage Data" ] - } - }, - "/api/v1/as-curator/preparations" : { - "get" : { - "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for preparation metadata objects", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/by/group/{id}" : { - "get" : { - "operationId" : "getPreparationsByGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparations related to the given group", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/{id}" : { - "get" : { - "operationId" : "getPreparationAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updatePreparationAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a preparation object", - "tags" : [ "Preparation SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/preparations/{id}/versions" : { - "get" : { - "operationId" : "getPreparationVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/{id}/versions/{version}" : { - "get" : { - "operationId" : "getPreparationByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-user/preparations" : { - "get" : { - "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for preparation metadata objects", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/by/group/{id}" : { - "get" : { - "operationId" : "getPreparationsByGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparations related to the given group", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}" : { - "get" : { - "operationId" : "getPreparationAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}/versions" : { - "get" : { - "operationId" : "getPreparationVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}/versions/{version}" : { - "get" : { - "operationId" : "getPreparationByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/xrefsets" : { - "post" : { - "operationId" : "create", - "requestBody" : { - "description" : "Request body for creating a new xrefset.\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetCreateRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetCreateResponse" - } - } - }, - "description" : "successful operation" - }, - "201" : { - "content" : { }, - "description" : "The objects were successfully created. The returned value is a list of created objects." - }, - "400" : { - "content" : { }, - "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to work with the xrefset." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a new xrefset file", - "tags" : [ "Xrefset queries" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/xrefsets/entries" : { - "get" : { - "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", - "operationId" : "searchEntries", - "parameters" : [ { - "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", - "explode" : true, - "in" : "query", - "name" : "sourceId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", - "explode" : true, - "in" : "query", - "name" : "targetId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetSearchResult" - } - } - }, - "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of entries across all xrefsets for given sourceId and targetId", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}" : { - "delete" : { - "operationId" : "deleteFile", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "pattern" : ".*", - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Xrefset file successfully marked for deletion, mappings have been removed" - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to work with the xrefset." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a xrefset with all related data.\nOnly users who uploaded the xrefset are allowed to delete it.", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}/entries" : { - "get" : { - "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n\n", - "operationId" : "searchEntriesWithinFile", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", - "explode" : true, - "in" : "query", - "name" : "sourceId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", - "explode" : true, - "in" : "query", - "name" : "targetId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetSearchResult" - } - } - }, - "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of entries for the given xrefset and given sourceId and targetId", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}/metadata" : { - "get" : { - "operationId" : "getDetailsByAccession", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetMetadata" - } - } - }, - "description" : "Object containing xrefset details, including user submitted metadata and system info" - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve xrefset details", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/reference-genomes" : { - "get" : { - "operationId" : "search_reference_genomes", - "summary" : "List or search for Reference Genome objects", - "tags" : [ "Reference genome" ], - "description" : "Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects.", - "parameters" : [ { - "in" : "query", - "name" : "organism", - "description" : "Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "assembly", - "description" : "Major version (for example, `GRCh38`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "release", - "description" : "Ensembl reference genome minor version (for example, `75` or `109`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - }, - "post" : { - "operationId" : "upload", - "summary" : "Upload reference genome to ODM", - "tags" : [ "Reference genome" ], - "description" : "In order to import reference genome file, please fill in the following fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format.\nNote: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided.\n* `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\nNote: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list.\n* `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html).\n* `release` - Ensembl reference genome minor version (for example, `75` or `109`).\n* `name` - customized reference genome title that is used for linkage variant files.\nBy default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`.\n\nReference genome will be available after initialisation. Please track initialisation task status.", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UploadRGRequest" - } - } - }, - "required" : false - }, - "responses" : { - "201" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AccessionResponse" - } - } - }, - "description" : "The object was successfully created." - }, - "400" : { - "content" : { }, - "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/reference-genomes/{id}" : { - "get" : { - "operationId" : "get_reference_genome_by_accession", - "summary" : "Retrieve a single Reference Genome object by ID (accession)", - "tags" : [ "Reference genome" ], - "parameters" : [ { - "in" : "path", - "name" : "id", - "description" : "Unique identifier (Genestack accession) of Reference Genome object.", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RGItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchSamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for sample metadata objects", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-curator/samples/{id}" : { - "get" : { - "operationId" : "getSampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateSampleAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a sample object", - "tags" : [ "Sample SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/samples/{id}/versions" : { - "get" : { - "operationId" : "getSampleVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-curator/samples/{id}/versions/{version}" : { - "get" : { - "operationId" : "getSampleByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-user/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchSamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for sample metadata objects", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}" : { - "get" : { - "operationId" : "getSampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}/versions" : { - "get" : { - "operationId" : "getSampleVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}/versions/{version}" : { - "get" : { - "operationId" : "getSampleByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/scim/Groups" : { - "get" : { - "description" : "The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the \"Manage Groups\" permission, then a list of all groups.\n The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK.", - "operationId" : "findGroups", - "parameters" : [ { - "description" : "Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   Using other operators returns an error.\n Groups can be filtered by displayName only.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=displayName eq \"Curator\".", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If excludedAttributes=members is specified in the request, groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", - "in" : "query", - "name" : "excludedAttributes", - "schema" : { - "type" : "string" - } - }, { - "description" : "The 1-based index of the first result in the current set of list results.", - "in" : "query", - "name" : "startIndex", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The number of resources returned in a list response page. The value by default is 100.", - "in" : "query", - "name" : "count", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/FilterGroupsResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Incorrect syntax in the request. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of available groups", - "tags" : [ "Groups" ] - }, - "post" : { - "description" : "The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the \"Group admin\" role. The \"members\" attribute in the request body must be empty, otherwise the endpoint returns an error.\n The endpoint does not require any user permission.\n The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name.\n If there are attributes in the request body that ODM does not support, then ODM ignores them.", - "operationId" : "createGroup", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Group" - } - } - }, - "required" : true - }, - "responses" : { - "201" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupResponse" - } - } - }, - "description" : "The operation is successful. The response body contains the representation of the newly created group." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "409" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, data conflict. See the error message for details." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Add a new user group", - "tags" : [ "Groups" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Groups/{id}" : { - "delete" : { - "description" : "The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated.\n Permissions to call the endpoint:\n   - If the user does not have the \"Manage groups\" permission:\n     * the user has \"Group admin\" role - the user can delete the group;\n     * the user has \"Group member\" role - the group can not be deleted, an error is returned;\n     * the user is not a member of the specified group - the group can not be deleted, an error is returned.\n   - If the user has the \"Manage groups\" permission - the user can delete the group regardless of user’s membership in this group.", - "operationId" : "deleteGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "The group has been successfully removed. No data is returned." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied group ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Delete a group", - "tags" : [ "Groups" ] - }, - "get" : { - "description" : "The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required:\n   - If the user has the \"Manage groups\" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group;\n   - If the user does not have the \"Manage groups\" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned.", - "operationId" : "getGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "If excludedAttributes=members is specified in the request, Groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", - "in" : "query", - "name" : "excludedAttributes", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied group ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no available groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a group by id", - "tags" : [ "Groups" ] - }, - "patch" : { - "description" : "The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n The endpoint requires access to the group as admin of the group: the user has the \"Admin group\" role in the group or the user has the \"Manage groups\" permission.", - "operationId" : "patchGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupPatch" - } - } - }, - "required" : true - }, - "responses" : { - "204" : { - "content" : { }, - "description" : "Group is successfully updated. No data is returned" - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Update a group", - "tags" : [ "Groups" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Users" : { - "get" : { - "description" : "The endpoint returns a list of active users. The list can be filtered by user attributes using the filter parameter. If no filtering parameters are passed, then all users are returned. If there are no users in the response body, the endpoint returns 200 OK. The \"Manage organization\" permission is required.", - "operationId" : "findUsers", - "parameters" : [ { - "description" : "Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   and - logical \"and\", the filter is only a match if both expressions evaluate to true;\n   Using other operators returns an error.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] - returns a user with login = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\".", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The 1-based index of the first result in the current set of list results.", - "in" : "query", - "name" : "startIndex", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The number of resources returned in a list response page. The value by default is 100.", - "in" : "query", - "name" : "count", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/FilterUsersResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Incorrect syntax in the request. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of all active users", - "tags" : [ "Users" ] - }, - "post" : { - "description" : "The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The \"Manage organization\" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the \"Manage organization\" permission.\n Only one email can be specified.", - "operationId" : "createUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/User" - } - } - }, - "required" : true - }, - "responses" : { - "201" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "The operation is successful. The response body contains the representation of the newly created or updated user." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "409" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, data conflict. See the error message for details." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Add a new user", - "tags" : [ "Users" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Users/{id}" : { - "delete" : { - "operationId" : "deleteUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "The user has been successfully deactivated. No data is returned." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied user ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Deactivate a user", - "tags" : [ "Users" ] - }, - "get" : { - "description" : "The endpoint returns an active user by id, where id is internal user id in ODM. The \"Manage organization\" permission is required.", - "operationId" : "getUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied user ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no available users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a user by id", - "tags" : [ "Users" ] - }, - "patch" : { - "description" : "The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n It is possible to update attributes of the deactivated users.\n\n The endpoint requires the \"Manage organization\" permission.", - "operationId" : "patchUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UserPatch" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "User is successfully updated. The response body contains the representation of the updated user." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Update a user", - "tags" : [ "Users" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/studies" : { - "get" : { - "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", - "operationId" : "searchStudiesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for study metadata objects", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-curator/studies/{id}" : { - "get" : { - "operationId" : "getStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateStudyAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a study object", - "tags" : [ "Study SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/studies/{id}/versions" : { - "get" : { - "operationId" : "getStudyVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-curator/studies/{id}/versions/{version}" : { - "get" : { - "operationId" : "getStudyByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-user/studies" : { - "get" : { - "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", - "operationId" : "searchStudiesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for study metadata objects", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}" : { - "get" : { - "operationId" : "getStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}/versions" : { - "get" : { - "operationId" : "getStudyVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}/versions/{version}" : { - "get" : { - "operationId" : "getStudyByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/tasks/publish-versions" : { - "post" : { - "description" : "This endpoint publishes all information from drafts and creates new metadata versions for each study/associated objects with unpublished changes. Only curators with the ACCESS_ALL_DATA permission can use this method.", - "operationId" : "publishAllStudies", - "parameters" : [ { - "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", - "in" : "query", - "name" : "versionMessage", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Forbidden" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Asynchronous task that publishes all pending versions across all studies in the instance.", - "tags" : [ "Tasks API" ] - } - }, - "/api/v1/tasks/{id}" : { - "get" : { - "description" : "Supply the accession (id) of an ODM task to retrieve metadata about that task.", - "operationId" : "getTaskInfo", - "parameters" : [ { - "description" : "Accession of the task.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve information about any ODM task.", - "tags" : [ "Tasks API" ] - } - }, - "/api/v1/as-curator/variants" : { - "get" : { - "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getAllVariantsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", - "in" : "query", - "name" : "variantRegion", - "schema" : { - "items" : { - "type" : "string", - "example" : "2:233364596-233385916" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", - "in" : "query", - "name" : "variantFeature", - "schema" : { - "items" : { - "type" : "string", - "example" : "ENSG00000227232" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", - "in" : "query", - "name" : "variantId", - "schema" : { - "items" : { - "type" : "string", - "example" : "rs334" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", - "in" : "query", - "name" : "variantFilter", - "schema" : { - "enum" : [ "pass", "noPass" ], - "type" : "string" - } - }, { - "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", - "in" : "query", - "name" : "variantInfo", - "schema" : { - "type" : "string" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantResponse" - } - } - }, - "description" : "Retrieved variant data." - }, - "400" : { - "content" : { }, - "description" : "Variant data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple variant data and metadata objects", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group/by/run/{id}" : { - "get" : { - "operationId" : "getVariantGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group/{id}" : { - "get" : { - "operationId" : "getVariantGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant group by ID (groupId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchVariantRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}" : { - "get" : { - "operationId" : "getVariantAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by ID (itemId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}/versions" : { - "get" : { - "operationId" : "getVariantVersionsAsCurator", - "parameters" : [ { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of variant object versions by run ID (runId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}/versions/{version}" : { - "get" : { - "operationId" : "getVariantByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the variant object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by run ID and its version", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-user/variants" : { - "get" : { - "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getAllVariantsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", - "in" : "query", - "name" : "variantRegion", - "schema" : { - "items" : { - "type" : "string", - "example" : "2:233364596-233385916" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", - "in" : "query", - "name" : "variantFeature", - "schema" : { - "items" : { - "type" : "string", - "example" : "ENSG00000227232" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", - "in" : "query", - "name" : "variantId", - "schema" : { - "items" : { - "type" : "string", - "example" : "rs334" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", - "in" : "query", - "name" : "variantFilter", - "schema" : { - "enum" : [ "pass", "noPass" ], - "type" : "string" - } - }, { - "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", - "in" : "query", - "name" : "variantInfo", - "schema" : { - "type" : "string" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantResponse" - } - } - }, - "description" : "Retrieved variant data." - }, - "400" : { - "content" : { }, - "description" : "Variant data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple variant data and metadata objects", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchVariantGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group/by/run/{id}" : { - "get" : { - "operationId" : "getVariantGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group/{id}" : { - "get" : { - "operationId" : "getVariantGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant group by ID (groupId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchVariantRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}" : { - "get" : { - "operationId" : "getVariantAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by ID (itemId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}/versions" : { - "get" : { - "operationId" : "getVariantVersionsAsUser", - "parameters" : [ { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of variant object versions by run ID (runId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}/versions/{version}" : { - "get" : { - "operationId" : "getVariantByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the variant object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by run ID and its version", - "tags" : [ "Variant SPoT as User" ] - } - } - }, - "components" : { - "schemas" : { - "Cell" : { - "$ref" : "./schemas/cell/Cell.yaml" - }, - "CellListResponse" : { - "$ref" : "./schemas/cell/CellListResponse.yaml" - }, - "CommitInfo" : { - "$ref" : "./schemas/common/CommitInfo.yaml" - }, - "ExpressionItem" : { - "$ref" : "./schemas/expression/ExpressionItem.yaml" - }, - "ExpressionResponse" : { - "$ref" : "./schemas/expression/ExpressionResponse.yaml" - }, - "IntegrationHelper" : { - "$ref" : "./schemas/common/IntegrationHelper.yaml" - }, - "ListResponse" : { - "$ref" : "./schemas/common/ListResponse.yaml" - }, - "MetaResponse" : { - "$ref" : "./schemas/common/MetaResponse.yaml" - }, - "MetadataContent" : { - "$ref" : "./schemas/common/MetadataContent.yaml" - }, - "MetadataWithId" : { - "$ref" : "./schemas/common/MetadataWithId.yaml" - }, - "PaginationInfo" : { - "$ref" : "./schemas/common/PaginationInfo.yaml" - }, - "RunFilter" : { - "$ref" : "./schemas/common/RunFilter.yaml" - }, - "RunsResponse" : { - "$ref" : "./schemas/common/RunsResponse.yaml" - }, - "ResponseFormat" : { - "$ref" : "./schemas/common/ResponseFormat.yaml" - }, - "SignalRun" : { - "$ref" : "./schemas/common/SignalRun.yaml" - }, - "AFile" : { - "$ref" : "./schemas/afile/AFile.yaml" - }, - "FlowCytometryItem" : { - "$ref" : "./schemas/flow-cytometry/FlowCytometryItem.yaml" - }, - "FlowCytometryResponse" : { - "$ref" : "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - }, - "AttributeInvalidValue" : { - "$ref" : "./schemas/integration/AttributeInvalidValue.yaml" - }, - "AttributeValidationSummary" : { - "$ref" : "./schemas/integration/AttributeValidationSummary.yaml" - }, - "BatchOfIds" : { - "$ref" : "./schemas/integration/BatchOfIds.yaml" - }, - "DataItem" : { - "$ref" : "./schemas/integration/DataItem.yaml" - }, - "DataPresentation" : { - "$ref" : "./schemas/integration/DataPresentation.yaml" - }, - "GroupValidationSummary" : { - "$ref" : "./schemas/integration/GroupValidationSummary.yaml" - }, - "IMetadata" : { - "$ref" : "./schemas/integration/IMetadata.yaml" - }, - "Library" : { - "$ref" : "./schemas/library/Library.yaml" - }, - "Link" : { - "$ref" : "./schemas/integration/Link.yaml" - }, - "MetadataPresentation" : { - "$ref" : "./schemas/integration/MetadataPresentation.yaml" - }, - "OmicsResponse" : { - "$ref" : "./schemas/integration/OmicsResponse.yaml" - }, - "OmicsResponseDataPresentation" : { - "$ref" : "./schemas/integration/OmicsResponseDataPresentation.yaml" - }, - "OmicsResponseMetadataPresentation" : { - "$ref" : "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - }, - "OmicsResponseMetadataWithId" : { - "$ref" : "./schemas/integration/OmicsResponseMetadataWithId.yaml" - }, - "Preparation" : { - "$ref" : "./schemas/preparation/Preparation.yaml" - }, - "Relationships" : { - "$ref" : "./schemas/integration/Relationships.yaml" - }, - "SourceTypePair" : { - "$ref" : "./schemas/integration/SourceTypePair.yaml" - }, - "StreamingOutput" : { - "$ref" : "./schemas/integration/StreamingOutput.yaml" - }, - "Study" : { - "$ref" : "./schemas/study/Study.yaml" - }, - "StudyValidationSummary" : { - "$ref" : "./schemas/integration/StudyValidationSummary.yaml" - }, - "TaskInfo" : { - "$ref" : "./schemas/tasks/TaskInfo.yaml" - }, - "ValidationError" : { - "$ref" : "./schemas/integration/ValidationError.yaml" - }, - "SearchStudyRequest" : { - "$ref" : "./schemas/integration/SearchStudyRequest.yaml" - }, - "AppliedFilter" : { - "$ref" : "./schemas/integration/AppliedFilter.yaml" - }, - "PageRequest" : { - "$ref" : "./schemas/integration/PageRequest.yaml" - }, - "FindObjectsResponse" : { - "$ref" : "./schemas/integration/FindObjectsResponse.yaml" - }, - "ObjectsPage" : { - "$ref" : "./schemas/integration/ObjectsPage.yaml" - }, - "StudySearchInfo" : { - "$ref" : "./schemas/integration/StudySearchInfo.yaml" - }, - "MetainfoKeyForSummary" : { - "$ref" : "./schemas/integration/MetainfoKeyForSummary.yaml" - }, - "FilterOptionGroup" : { - "$ref" : "./schemas/integration/FilterOptionGroup.yaml" - }, - "FilterOption" : { - "$ref" : "./schemas/integration/FilterOption.yaml" - }, - "DERequest" : { - "$ref" : "./schemas/cell/DERequest.yaml" - }, - "DEResponse" : { - "$ref" : "./schemas/cell/DEResponse.yaml" - }, - "GSRequest" : { - "$ref" : "./schemas/cell/GSRequest.yaml" - }, - "GSResponse" : { - "$ref" : "./schemas/cell/GSResponse.yaml" - }, - "CRRequest" : { - "$ref" : "./schemas/cell/CRRequest.yaml" - }, - "CRResponse" : { - "$ref" : "./schemas/cell/CRResponse.yaml" - }, - "ExceptionTypeAndMessage" : { - "$ref" : "./schemas/job/ExceptionTypeAndMessage.yaml" - }, - "ImportCellsRequest" : { - "$ref" : "./schemas/job/ImportCellsRequest.yaml" - }, - "ImportCellsFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportCellsFromMultipartRequest.yaml" - }, - "ImportMetadataRequest" : { - "$ref" : "./schemas/job/ImportMetadataRequest.yaml" - }, - "ImportMetadataFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportMetadataFromMultipartRequest.yaml" - }, - "ImportSignalRunRequest" : { - "$ref" : "./schemas/job/ImportSignalRunRequest.yaml" - }, - "ImportSignalRunFomMultipartRequest" : { - "$ref" : "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" - }, - "ImportExpressionSignalRunRequest" : { - "$ref" : "./schemas/job/ImportExpressionSignalRunRequest.yaml" - }, - "ImportExpressionSignalRunFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" - }, - "ImportAFileRequest" : { - "$ref" : "./schemas/job/ImportAFileRequest.yaml" - }, - "ImportAFileFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportAFileFromMultipartRequest.yaml" - }, - "Info" : { - "$ref" : "./schemas/job/Info.yaml" - }, - "JobRuntimeError" : { - "$ref" : "./schemas/job/JobRuntimeError.yaml" - }, - "Output" : { - "$ref" : "./schemas/job/Output.yaml" - }, - "DetachedCollection" : { - "$ref" : "./schemas/manage-data/DetachedCollection.yaml" - }, - "DetachedObject" : { - "$ref" : "./schemas/manage-data/DetachedObject.yaml" - }, - "ManagedObject" : { - "$ref" : "./schemas/manage-data/ManagedObject.yaml" - }, - "XrefSetCreateRequest" : { - "$ref" : "./schemas/reference-data/XrefSetCreateRequest.yaml" - }, - "XrefSetCreateResponse" : { - "$ref" : "./schemas/reference-data/XrefSetCreateResponse.yaml" - }, - "XrefSetMetadata" : { - "$ref" : "./schemas/reference-data/XrefSetMetadata.yaml" - }, - "XrefSetSearchResult" : { - "$ref" : "./schemas/reference-data/XrefSetSearchResult.yaml" - }, - "XrefSetSearchResultEntry" : { - "$ref" : "./schemas/reference-data/XrefSetSearchResultEntry.yaml" - }, - "UploadRGRequest" : { - "$ref" : "./schemas/reference-genome/UploadRGRequest.yaml" - }, - "AccessionResponse" : { - "$ref" : "./schemas/common/AccessionResponse.yaml" - }, - "RGItem" : { - "$ref" : "./schemas/reference-genome/RGItem.yaml" - }, - "Sample" : { - "$ref" : "./schemas/sample/Sample.yaml" - }, - "Group" : { - "$ref" : "./schemas/scim/Group.yaml" - }, - "Member" : { - "$ref" : "./schemas/scim/Member.yaml" - }, - "GroupPatch" : { - "$ref" : "./schemas/scim/GroupPatch.yaml" - }, - "PatchOperation" : { - "$ref" : "./schemas/scim/PatchOperation.yaml" - }, - "FilterGroupsResponse" : { - "$ref" : "./schemas/scim/FilterGroupsResponse.yaml" - }, - "GroupResponse" : { - "$ref" : "./schemas/scim/GroupResponse.yaml" - }, - "Meta" : { - "$ref" : "./schemas/scim/Meta.yaml" - }, - "SCIMErrorResponse" : { - "$ref" : "./schemas/scim/SCIMErrorResponse.yaml" - }, - "BaseErrorResponse" : { - "$ref" : "./schemas/scim/BaseErrorResponse.yaml" - }, - "ErrorMessage" : { - "$ref" : "./schemas/scim/ErrorMessage.yaml" - }, - "User" : { - "$ref" : "./schemas/scim/User.yaml" - }, - "Email" : { - "$ref" : "./schemas/scim/Email.yaml" - }, - "UserPatch" : { - "$ref" : "./schemas/scim/UserPatch.yaml" - }, - "FilterUsersResponse" : { - "$ref" : "./schemas/scim/FilterUsersResponse.yaml" - }, - "UserResponse" : { - "$ref" : "./schemas/scim/UserResponse.yaml" - }, - "VariantMetadataWithId" : { - "$ref" : "./schemas/variant/VariantMetadataWithId.yaml" - }, - "VariantItem" : { - "$ref" : "./schemas/variant/VariantItem.yaml" - }, - "VariantResponse" : { - "$ref" : "./schemas/variant/VariantResponse.yaml" - } - }, - "securitySchemes" : { - "Access-token" : { - "in" : "header", - "name" : "Authorization", - "type" : "apiKey" - }, - "Genestack-API-Token" : { - "in" : "header", - "name" : "Genestack-API-Token", - "type" : "apiKey" - } - }, - "parameters" : { - "AllowDuplicates" : { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } - } - } -} diff --git a/openapi/v1/schemas/afile/AFile.yaml b/openapi/v1/schemas/afile/AFile.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/afile/AFile.yaml +++ b/openapi/v1/schemas/afile/AFile.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/cell/CRRequest.yaml b/openapi/v1/schemas/cell/CRRequest.yaml index c357ac70..e69de29b 100644 --- a/openapi/v1/schemas/cell/CRRequest.yaml +++ b/openapi/v1/schemas/cell/CRRequest.yaml @@ -1,7 +0,0 @@ -type: object -properties: - cellGroup: - $ref: 'CellGroupRequest.yaml' - exQuery: - type: string - example: '-3 < value < 3' diff --git a/openapi/v1/schemas/cell/CRResponse.yaml b/openapi/v1/schemas/cell/CRResponse.yaml index afa265f4..e69de29b 100644 --- a/openapi/v1/schemas/cell/CRResponse.yaml +++ b/openapi/v1/schemas/cell/CRResponse.yaml @@ -1,21 +0,0 @@ -type: object -required: - - countSelected - - countAvailable - - ratio -properties: - countSelected: - type: integer - format: int32 - description: Count of Cells selected with all queries and filters. - example: 1243393 - countAvailable: - type: integer - format: int32 - description: Count of all available Cells limited by Study and SLP queries and filters. - example: 9234945 - ratio: - type: number - format: double - description: Ratio value - example: 0.13465 diff --git a/openapi/v1/schemas/cell/Cell.yaml b/openapi/v1/schemas/cell/Cell.yaml index 4d636509..e69de29b 100644 --- a/openapi/v1/schemas/cell/Cell.yaml +++ b/openapi/v1/schemas/cell/Cell.yaml @@ -1,33 +0,0 @@ -type: object -#schema is not described because of dynamic attributes' limited support in openapi-generator -description: |+ - Cell object having required, optional and dynamic attributes. - - **Required:** - - `cellId`: string - unique cell identifier, which consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - - `barcode`: string - raw barcode of the cell, e.g. `AAACCTGAGCGCTCCA-1`. - - `batch`: string - identifier of an origin object, such as a sample or a library, that this cell belongs to, e.g. `SAMPLE_001`. - - **Optional:** - - `cellType`: string - inferred or annotated type, e.g. `T cell`. - - `cluster`: string - clustering labels, e.g. `leiden_res1`. - - `nCounts`: integer - total UMI count (Unique Molecular Identifier), e.g. `1250`. - - `percentMito`: number - percentage of mitochondrial gene expression, e.g. `5.2`. - - `umap`: array of two or three numbers - dimensionality reduction results (Uniform Manifold Approximation and Projection), e.g. `[1.23, 0.45]`. - - `pca`: array of between 2 and 100 numbers - dimensionality reduction results (Principal Component Analysis results), e.g. `[0.12, 0.34]`. - - `tsne`: array of two or three numbers - dimensionality reduction results (t-distributed Stochastic Neighbor Embedding), e.g. `[1.23, 0.45]`. - - **Dynamic:** - - Any additional attributes in a form of key-value pairs, which can vary between different cell objects. -example: - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" - barcode: "AAACCTGAGCGCTCCA-1" - batch: "SAMPLE_001" - cellType: "T cell" - cluster: "leiden_res1" - nCounts: 1250 - percentMito: 5.2 - umap: [1.23, 0.45] - pca: [0.12, 0.34] - tsne: [1.23, 0.45] - assay_custom: "10x 3' v2" diff --git a/openapi/v1/schemas/cell/CellListResponse.yaml b/openapi/v1/schemas/cell/CellListResponse.yaml index 996e840e..e69de29b 100644 --- a/openapi/v1/schemas/cell/CellListResponse.yaml +++ b/openapi/v1/schemas/cell/CellListResponse.yaml @@ -1,34 +0,0 @@ -type: object -properties: - data: - items: - $ref: "#/components/schemas/Cell" - type: array - cursor: - type: string -components: - schemas: - Cell: - $ref: "./Cell.yaml" -example: - cursor: "GSF123456-AAAGATGGTTCCTCCA-1" - data: - - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" - barcode: "AAACCTGAGCGCTCCA-1" - batch: "SAMPLE_001" - cellType: "T cell" - cluster: "leiden_res1" - nCounts: 1250 - percentMito: 5.2 - umap: [1.23, 0.45] - pca: [0.12, 0.34] - tsne: [1.23, 0.45] - assay_custom: "10x 3' v2" - - cellId: "GSF222333-AAAGATGGTTCCTCCA-1" - barcode: "AAAGATGGTTCCTCCA-1" - batch: "SAMPLE_001" - cellType: "naive B cell" - nCounts: 340 - pca: [0.2, 2.8] - primary_custom: "True" - tissue_custom: "blood" diff --git a/openapi/v1/schemas/cell/DERequest.yaml b/openapi/v1/schemas/cell/DERequest.yaml index f63bb125..e69de29b 100644 --- a/openapi/v1/schemas/cell/DERequest.yaml +++ b/openapi/v1/schemas/cell/DERequest.yaml @@ -1,22 +0,0 @@ -type: object -properties: - caseGroup: - $ref: 'CellGroupRequest.yaml' - controlGroup: - $ref: 'CellGroupRequest.yaml' - exQuery: - type: string - example: 'feature=ENSG00000230368,ENSG00000188976' - limit: - type: integer - format: int32 - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - example: 2000 - offset: - type: integer - format: int32 - description: This parameter allows skipping a specified number of results, with the default set at 0. - example: 0 -required: - - caseGroup - - controlGroup diff --git a/openapi/v1/schemas/cell/DEResponse.yaml b/openapi/v1/schemas/cell/DEResponse.yaml index c8dc108d..e69de29b 100644 --- a/openapi/v1/schemas/cell/DEResponse.yaml +++ b/openapi/v1/schemas/cell/DEResponse.yaml @@ -1,97 +0,0 @@ -type: object -properties: - resultsPerGene: - type: array - items: - $ref: '#/components/schemas/GeneEntry' - pagination: - $ref: '#/components/schemas/Pagination' -required: - - resultsPerGene - - pagination -components: - schemas: - GeneEntry: - type: object - # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. - properties: - geneId: - type: string - description: Gene identifier. - example: ENSG00000230368 - caseCellCount: - type: integer - description: Number of cells expressing the gene in the case group. - example: 8450 - controlCellCount: - type: integer - description: Number of cells expressing the gene in the control group. - example: 8123 - caseAvgEx: - type: number - format: double - description: Mean expression level across case cells. - example: 1.24 - controlAvgEx: - type: number - format: double - description: Mean expression level across control cells. - example: 0.62 - exDifference: - type: number - format: double - description: Numerical difference between average expressions. - example: 0.62 - foldChange: - type: number - format: double - description: Ratio of average expressions between case and control groups. - example: 2.0 - log2FC: - type: number - format: double - description: Logarithm with base 2 of the Fold change value. - example: 1.4594316186372973 - mannWhitneyU: - type: number - format: double - description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. - example: 1.5 - pValue: - type: number - format: double - description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - example: 0.5536169919657803 - required: - - geneId - - caseCellCount - - controlCellCount - - caseAvgEx - - controlAvgEx - - exDifference - - foldChange - - log2FC - - mannWhitneyU - - pValue - Pagination: - type: object - properties: - currentResultsCount: - type: integer - format: int32 - description: Number of results returned in the current response. - example: 1 - limit: - type: integer - format: int32 - description: Results limit, used in the request. - example: 2000 - offset: - type: integer - format: int32 - description: Results offset, used in the request. - example: 0 - required: - - currentResultsCount - - limit - - offset diff --git a/openapi/v1/schemas/cell/GSRequest.yaml b/openapi/v1/schemas/cell/GSRequest.yaml index f771f156..e69de29b 100644 --- a/openapi/v1/schemas/cell/GSRequest.yaml +++ b/openapi/v1/schemas/cell/GSRequest.yaml @@ -1,17 +0,0 @@ -type: object -properties: - cellGroup: - $ref: 'CellGroupRequest.yaml' - geneNames: - type: array - items: - type: string - example: - - "ENSG00000230368" - - "ENSG00000188976" - - "ENSG00000188982" - exQuery: - type: string - example: '-3 < value < 3' -required: - - geneNames diff --git a/openapi/v1/schemas/cell/GSResponse.yaml b/openapi/v1/schemas/cell/GSResponse.yaml index 6c91f9e0..e69de29b 100644 --- a/openapi/v1/schemas/cell/GSResponse.yaml +++ b/openapi/v1/schemas/cell/GSResponse.yaml @@ -1,68 +0,0 @@ -type: object -properties: - resultsPerGene: - type: array - items: - $ref: '#/components/schemas/GeneSummaryEntry' -components: - schemas: - GeneSummaryEntry: - type: object - description: Per-gene summary statistics. - properties: - geneId: - type: string - description: Gene identifier. - example: "ENSG00000111640" - cellCount: - type: integer - format: int32 - description: Number of cells expressing the gene. - example: 8968167 - mean: - type: number - format: double - description: Mean expression - example: 7.747614311820911 - median: - type: number - format: double - description: Median expression - example: 7 - stdDev: - type: number - format: double - description: Standard deviation - example: 6.499314669429827 - min: - type: number - format: double - description: Minimum value - example: 1 - max: - type: number - format: double - description: Maximum value - example: 496 - quantiles: - type: array - description: | - List of quantile values from 0 to 1 (inclusive), with step 0.1 - example: | - [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] - items: - type: number - format: double - histogram: - type: array - description: | - Histogram as a list of [binStart, binEnd, count] triples. - Length depends of the selected sample size, maximum is 20. - example: | - [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), - (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] - items: - type: array - items: - type: number - format: double diff --git a/openapi/v1/schemas/common/AccessionResponse.yaml b/openapi/v1/schemas/common/AccessionResponse.yaml index 7abf8406..e69de29b 100644 --- a/openapi/v1/schemas/common/AccessionResponse.yaml +++ b/openapi/v1/schemas/common/AccessionResponse.yaml @@ -1,8 +0,0 @@ -example: - genestack:accession: genestack:accession -properties: - genestack:accession: - type: string -required: - - genestack:accession -type: object diff --git a/openapi/v1/schemas/common/CommitInfo.yaml b/openapi/v1/schemas/common/CommitInfo.yaml index be5effd4..e69de29b 100644 --- a/openapi/v1/schemas/common/CommitInfo.yaml +++ b/openapi/v1/schemas/common/CommitInfo.yaml @@ -1,17 +0,0 @@ -example: - author: author - message: message - version: version - timestamp: 0 -properties: - author: - type: string - message: - type: string - timestamp: - format: int64 - type: integer - version: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/common/IntegrationHelper.yaml b/openapi/v1/schemas/common/IntegrationHelper.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/IntegrationHelper.yaml +++ b/openapi/v1/schemas/common/IntegrationHelper.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/common/ListResponse.yaml b/openapi/v1/schemas/common/ListResponse.yaml index 3a8080f8..e69de29b 100644 --- a/openapi/v1/schemas/common/ListResponse.yaml +++ b/openapi/v1/schemas/common/ListResponse.yaml @@ -1,23 +0,0 @@ -example: - data: - - {} - - {} - meta: - pagination: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - meta: - $ref: "#/components/schemas/MetaResponse" - data: - items: - properties: {} - type: object - type: array -type: object -components: - schemas: - MetaResponse: - $ref: "./MetaResponse.yaml" diff --git a/openapi/v1/schemas/common/MetaResponse.yaml b/openapi/v1/schemas/common/MetaResponse.yaml index b9ab8285..e69de29b 100644 --- a/openapi/v1/schemas/common/MetaResponse.yaml +++ b/openapi/v1/schemas/common/MetaResponse.yaml @@ -1,14 +0,0 @@ -example: - pagination: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - pagination: - $ref: "#/components/schemas/PaginationInfo" -type: object -components: - schemas: - PaginationInfo: - $ref: "./PaginationInfo.yaml" diff --git a/openapi/v1/schemas/common/MetadataContent.yaml b/openapi/v1/schemas/common/MetadataContent.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/MetadataContent.yaml +++ b/openapi/v1/schemas/common/MetadataContent.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/common/MetadataWithId.yaml b/openapi/v1/schemas/common/MetadataWithId.yaml index abe5d5d2..e69de29b 100644 --- a/openapi/v1/schemas/common/MetadataWithId.yaml +++ b/openapi/v1/schemas/common/MetadataWithId.yaml @@ -1,10 +0,0 @@ -example: - itemId: itemId - metadata: {} -properties: - itemId: - readOnly: true - type: string - metadata: - type: object -type: object diff --git a/openapi/v1/schemas/common/PaginationInfo.yaml b/openapi/v1/schemas/common/PaginationInfo.yaml index ccad66b8..e69de29b 100644 --- a/openapi/v1/schemas/common/PaginationInfo.yaml +++ b/openapi/v1/schemas/common/PaginationInfo.yaml @@ -1,19 +0,0 @@ -example: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - count: - format: int32 - type: integer - total: - format: int64 - type: integer - offset: - format: int32 - type: integer - limit: - format: int32 - type: integer -type: object diff --git a/openapi/v1/schemas/common/ResponseFormat.yaml b/openapi/v1/schemas/common/ResponseFormat.yaml index 92d05d15..e69de29b 100644 --- a/openapi/v1/schemas/common/ResponseFormat.yaml +++ b/openapi/v1/schemas/common/ResponseFormat.yaml @@ -1,3 +0,0 @@ -enum: - - term_id -type: string diff --git a/openapi/v1/schemas/common/RunFilter.yaml b/openapi/v1/schemas/common/RunFilter.yaml index 1971944d..e69de29b 100644 --- a/openapi/v1/schemas/common/RunFilter.yaml +++ b/openapi/v1/schemas/common/RunFilter.yaml @@ -1,4 +0,0 @@ -items: - type: string - example: runId -type: array diff --git a/openapi/v1/schemas/common/RunsResponse.yaml b/openapi/v1/schemas/common/RunsResponse.yaml index 9669ad2e..e69de29b 100644 --- a/openapi/v1/schemas/common/RunsResponse.yaml +++ b/openapi/v1/schemas/common/RunsResponse.yaml @@ -1,16 +0,0 @@ -example: - cursor: "1" - data: - - runId: "1" - sampleSourceId: "exp4-human-100well.ATATCCTACTACTTAACTAG" - - runId: "2" - sampleSourceId: "exp4-human-100well.TTACCTAAGTTTGATATATT" -properties: - cursor: - type: string - data: - items: - properties: { } - type: object - type: array -type: object diff --git a/openapi/v1/schemas/common/SignalRun.yaml b/openapi/v1/schemas/common/SignalRun.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/SignalRun.yaml +++ b/openapi/v1/schemas/common/SignalRun.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/expression/ExpressionItem.yaml b/openapi/v1/schemas/expression/ExpressionItem.yaml index 844ecf51..e69de29b 100644 --- a/openapi/v1/schemas/expression/ExpressionItem.yaml +++ b/openapi/v1/schemas/expression/ExpressionItem.yaml @@ -1,57 +0,0 @@ -example: - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - expression: 1.82 - feature: - genes: MYO9A, - groupingKey: VRSLGGISPSEDRR - gene: gene - description: description - value: - value: 1.82 -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - gene: - type: string - expression: - example: 1.82 - format: double - type: number - feature: - example: - genes: MYO9A, - groupingKey: VRSLGGISPSEDRR - oneOf: - - type: object - - type: string - readOnly: true - value: - example: - value: 1.82 - type: object - patternProperties: - "^.*$": - format: double - oneOf: - - type: number - - type: string # Inf or -Inf - description: - type: string - readOnly: true -type: object diff --git a/openapi/v1/schemas/expression/ExpressionResponse.yaml b/openapi/v1/schemas/expression/ExpressionResponse.yaml index ec96fd1e..e69de29b 100644 --- a/openapi/v1/schemas/expression/ExpressionResponse.yaml +++ b/openapi/v1/schemas/expression/ExpressionResponse.yaml @@ -1,37 +0,0 @@ -example: - cursor: cursor - data: - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - gene: gene - feature: feature - expression: 1.82 - value: - value: 1.82 - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - gene: gene - feature: feature - expression: 1.82 - value: - value: 1.82 -properties: - data: - items: - $ref: "#/components/schemas/ExpressionItem" - type: array - cursor: - type: string -type: object -components: - schemas: - ExpressionItem: - $ref: "./ExpressionItem.yaml" diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml index b6448c68..e69de29b 100644 --- a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml +++ b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml @@ -1,43 +0,0 @@ -example: - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 - runId: runId -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - feature: - type: object - properties: - readoutType: - type: string - cellPopulation: - type: string - marker: - type: string - value: - type: object - properties: - value: - type: number -type: object diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml index 696aceb5..e69de29b 100644 --- a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml +++ b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml @@ -1,39 +0,0 @@ -example: - cursor: cursor - data: - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 -properties: - data: - items: - $ref: "#/components/schemas/FlowCytometryItem" - type: array - cursor: - type: string -type: object -components: - schemas: - FlowCytometryItem: - $ref: "./FlowCytometryItem.yaml" diff --git a/openapi/v1/schemas/integration/AppliedFilter.yaml b/openapi/v1/schemas/integration/AppliedFilter.yaml index cd300f3f..e69de29b 100644 --- a/openapi/v1/schemas/integration/AppliedFilter.yaml +++ b/openapi/v1/schemas/integration/AppliedFilter.yaml @@ -1,16 +0,0 @@ -properties: - type: - enum: - - FULL_TEXT - - SELECT - type: string - filterOptionId: - type: string - match: - type: string - mode: - enum: - - STRICT - - USE_NARROWER_TERMS - type: string -type: object diff --git a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml index eb4ccb77..e69de29b 100644 --- a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml +++ b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml @@ -1,26 +0,0 @@ -example: - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - value: - oneOf: - - properties: {} - type: object - - type: string - count: - format: int64 - type: integer - errors: - items: - $ref: "#/components/schemas/ValidationError" - type: array -type: object -components: - schemas: - ValidationError: - $ref: "./ValidationError.yaml" diff --git a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml index 5291f307..e69de29b 100644 --- a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml +++ b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml @@ -1,29 +0,0 @@ -example: - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - attributeName: - type: string - attributeInvalidValues: - items: - $ref: "#/components/schemas/AttributeInvalidValue" - type: array -type: object -components: - schemas: - AttributeInvalidValue: - $ref: "./AttributeInvalidValue.yaml" diff --git a/openapi/v1/schemas/integration/BatchOfIds.yaml b/openapi/v1/schemas/integration/BatchOfIds.yaml index e8b2f386..e69de29b 100644 --- a/openapi/v1/schemas/integration/BatchOfIds.yaml +++ b/openapi/v1/schemas/integration/BatchOfIds.yaml @@ -1,32 +0,0 @@ -description: Request model for getting links by many IDs. -example: - firstType: study - firstIds: - - firstIds - - firstIds - offset: 0 - limit: 0 -properties: - firstType: - description: Type of the objects. - example: study - type: string - firstIds: - description: Array of the object IDs with the same type. - items: - type: string - type: array - uniqueItems: true - offset: - description: 'Param says to skip that many links before beginning to return links. - Default: 0.' - format: int32 - type: integer - limit: - description: 'Param says to limit the count of returned links. Default: 1000.' - format: int32 - type: integer -required: -- firstIds -- firstType -type: object diff --git a/openapi/v1/schemas/integration/DataItem.yaml b/openapi/v1/schemas/integration/DataItem.yaml index 1c4590cb..e69de29b 100644 --- a/openapi/v1/schemas/integration/DataItem.yaml +++ b/openapi/v1/schemas/integration/DataItem.yaml @@ -1,6 +0,0 @@ -properties: - itemId: - type: string - metadata: - type: object -type: object diff --git a/openapi/v1/schemas/integration/DataPresentation.yaml b/openapi/v1/schemas/integration/DataPresentation.yaml index 45ccfc56..e69de29b 100644 --- a/openapi/v1/schemas/integration/DataPresentation.yaml +++ b/openapi/v1/schemas/integration/DataPresentation.yaml @@ -1,13 +0,0 @@ -properties: - itemId: - readOnly: true - type: string - metadata: - type: object - relationships: - $ref: "#/components/schemas/Relationships" -type: object -components: - schemas: - Relationships: - $ref: "./Relationships.yaml" diff --git a/openapi/v1/schemas/integration/FilterOption.yaml b/openapi/v1/schemas/integration/FilterOption.yaml index 96ccaea7..e69de29b 100644 --- a/openapi/v1/schemas/integration/FilterOption.yaml +++ b/openapi/v1/schemas/integration/FilterOption.yaml @@ -1,16 +0,0 @@ -example: - filterId: filterId - name: name - count: 5 - id: id -properties: - id: - type: string - filterId: - type: string - name: - type: string - count: - format: int64 - type: integer -type: object diff --git a/openapi/v1/schemas/integration/FilterOptionGroup.yaml b/openapi/v1/schemas/integration/FilterOptionGroup.yaml index 897e5a54..e69de29b 100644 --- a/openapi/v1/schemas/integration/FilterOptionGroup.yaml +++ b/openapi/v1/schemas/integration/FilterOptionGroup.yaml @@ -1,26 +0,0 @@ -example: - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id -properties: - filterId: - type: string - hasMoreOptions: - type: boolean - options: - items: - $ref: "#/components/schemas/FilterOption" - type: array -type: object -components: - schemas: - FilterOption: - $ref: "./FilterOption.yaml" diff --git a/openapi/v1/schemas/integration/FindObjectsResponse.yaml b/openapi/v1/schemas/integration/FindObjectsResponse.yaml index 679cdcaa..e69de29b 100644 --- a/openapi/v1/schemas/integration/FindObjectsResponse.yaml +++ b/openapi/v1/schemas/integration/FindObjectsResponse.yaml @@ -1,78 +0,0 @@ -example: - filterOptionGroups: - - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id - objectsPage: - filteredCount: 0 - pageRequest: - offset: 6 - limit: 50 - content: - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - objectsPage: - $ref: "#/components/schemas/ObjectsPage" - filterOptionGroups: - items: - $ref: "#/components/schemas/FilterOptionGroup" - type: array -type: object -components: - schemas: - ObjectsPage: - $ref: "./ObjectsPage.yaml" - FilterOptionGroup: - $ref: "./FilterOptionGroup.yaml" diff --git a/openapi/v1/schemas/integration/GroupValidationSummary.yaml b/openapi/v1/schemas/integration/GroupValidationSummary.yaml index c3399b6c..e69de29b 100644 --- a/openapi/v1/schemas/integration/GroupValidationSummary.yaml +++ b/openapi/v1/schemas/integration/GroupValidationSummary.yaml @@ -1,47 +0,0 @@ -example: - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - groupAccession: - type: string - attributes: - items: - $ref: "#/components/schemas/AttributeValidationSummary" - type: array -type: object -components: - schemas: - AttributeValidationSummary: - $ref: "./AttributeValidationSummary.yaml" diff --git a/openapi/v1/schemas/integration/IMetadata.yaml b/openapi/v1/schemas/integration/IMetadata.yaml index abbedd84..e69de29b 100644 --- a/openapi/v1/schemas/integration/IMetadata.yaml +++ b/openapi/v1/schemas/integration/IMetadata.yaml @@ -1,21 +0,0 @@ -properties: - source: - format: uri - type: string - name: - type: string - public: - type: boolean - id: - type: string - content: - type: object - dataType: - type: string - contentMap: - type: object - metadataContent: - type: object - fileIdAssociatedWithTemplate: - type: string -type: object diff --git a/openapi/v1/schemas/integration/Link.yaml b/openapi/v1/schemas/integration/Link.yaml index f9627bb5..e69de29b 100644 --- a/openapi/v1/schemas/integration/Link.yaml +++ b/openapi/v1/schemas/integration/Link.yaml @@ -1,21 +0,0 @@ -description: Link between two objects. Each of them represented as a unique pair of - ID (accession) and unique type. -example: - firstId: firstId - firstType: firstType - secondId: secondId - secondType: secondType -properties: - firstId: - description: Object ID (accession) (e.g. accession of study) - type: string - firstType: - description: Type of the object (e.g. study) - type: string - secondId: - description: Object ID (accession) (e.g. accession of study) - type: string - secondType: - description: Type of the object (e.g. study) - type: string -type: object diff --git a/openapi/v1/schemas/integration/MetadataPresentation.yaml b/openapi/v1/schemas/integration/MetadataPresentation.yaml index bae5ce0b..e69de29b 100644 --- a/openapi/v1/schemas/integration/MetadataPresentation.yaml +++ b/openapi/v1/schemas/integration/MetadataPresentation.yaml @@ -1,20 +0,0 @@ -description: |- - A description of object metadata. - - This will contain: - - `genestack:accession`: the object ID - - `Study Title` (for studies) - - `Sample ID` (for samples) - - all other attributes defined in the linked template (if any) -properties: - metadata: - $ref: "#/components/schemas/IMetadata" - relationships: - $ref: "#/components/schemas/Relationships" -type: object -components: - schemas: - IMetadata: - $ref: "./IMetadata.yaml" - Relationships: - $ref: "./Relationships.yaml" diff --git a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml index c22abc0d..e69de29b 100644 --- a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml +++ b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml @@ -1,13 +0,0 @@ -example: - values: - - values - - values - key: key -properties: - key: - type: string - values: - items: - type: string - type: array -type: object diff --git a/openapi/v1/schemas/integration/ObjectsPage.yaml b/openapi/v1/schemas/integration/ObjectsPage.yaml index 4b95d6b4..e69de29b 100644 --- a/openapi/v1/schemas/integration/ObjectsPage.yaml +++ b/openapi/v1/schemas/integration/ObjectsPage.yaml @@ -1,57 +0,0 @@ -example: - filteredCount: 0 - pageRequest: - offset: 6 - limit: 50 - content: - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - filteredCount: - format: int64 - type: integer - pageRequest: - $ref: "#/components/schemas/PageRequest" - content: - items: - $ref: "#/components/schemas/StudySearchInfo" - type: array -type: object -components: - schemas: - PageRequest: - $ref: "./PageRequest.yaml" - StudySearchInfo: - $ref: "./StudySearchInfo.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponse.yaml b/openapi/v1/schemas/integration/OmicsResponse.yaml index 52fd3ad4..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponse.yaml +++ b/openapi/v1/schemas/integration/OmicsResponse.yaml @@ -1,24 +0,0 @@ -example: - cursor: cursor - data: - - {} - - {} - log: - - log - - log - resultsExhausted: true -properties: - data: - items: - properties: {} - type: object - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object diff --git a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml index 88dac7bb..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/DataPresentation" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - DataPresentation: - $ref: "./DataPresentation.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml index c4d2d6fd..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/MetadataPresentation" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - MetadataPresentation: - $ref: "./MetadataPresentation.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml index cd660ef2..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - MetadataWithId: - $ref: "../common/MetadataWithId.yaml" diff --git a/openapi/v1/schemas/integration/PageRequest.yaml b/openapi/v1/schemas/integration/PageRequest.yaml index 817d8ba8..e69de29b 100644 --- a/openapi/v1/schemas/integration/PageRequest.yaml +++ b/openapi/v1/schemas/integration/PageRequest.yaml @@ -1,15 +0,0 @@ -example: - offset: 6 - limit: 50 -properties: - offset: - description: 'Param says to skip that many links before beginning to return links. - Default: 0.' - format: int32 - type: integer - limit: - description: 'Param says to limit the count of returned links. Default: 1000.' - example: 50 - format: int32 - type: integer -type: object diff --git a/openapi/v1/schemas/integration/Relationships.yaml b/openapi/v1/schemas/integration/Relationships.yaml index bb234453..e69de29b 100644 --- a/openapi/v1/schemas/integration/Relationships.yaml +++ b/openapi/v1/schemas/integration/Relationships.yaml @@ -1,14 +0,0 @@ -properties: - sample: - readOnly: true - type: string - cell: - readOnly: true - type: string - library: - readOnly: true - type: string - preparation: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/integration/SearchStudyRequest.yaml b/openapi/v1/schemas/integration/SearchStudyRequest.yaml index d2cd3724..e69de29b 100644 --- a/openapi/v1/schemas/integration/SearchStudyRequest.yaml +++ b/openapi/v1/schemas/integration/SearchStudyRequest.yaml @@ -1,30 +0,0 @@ -example: - filters: - - type: FULL_TEXT - match: text_to_search - mode: STRICT - - type: SELECT - filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP - page: - offset: 6 - limit: 50 -properties: - filters: - example: - - type: FULL_TEXT - match: text_to_search - mode: STRICT - - type: SELECT - filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP - items: - $ref: "#/components/schemas/AppliedFilter" - type: array - page: - $ref: "#/components/schemas/PageRequest" -type: object -components: - schemas: - AppliedFilter: - $ref: "./AppliedFilter.yaml" - PageRequest: - $ref: "./PageRequest.yaml" diff --git a/openapi/v1/schemas/integration/SourceTypePair.yaml b/openapi/v1/schemas/integration/SourceTypePair.yaml index 82e199f3..e69de29b 100644 --- a/openapi/v1/schemas/integration/SourceTypePair.yaml +++ b/openapi/v1/schemas/integration/SourceTypePair.yaml @@ -1,13 +0,0 @@ -example: - firstType: firstType - secondType: secondType -properties: - firstType: - description: Type of the object (e.g. study) - readOnly: true - type: string - secondType: - description: Type of the object (e.g. study) - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/integration/StreamingOutput.yaml b/openapi/v1/schemas/integration/StreamingOutput.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/integration/StreamingOutput.yaml +++ b/openapi/v1/schemas/integration/StreamingOutput.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/integration/StudySearchInfo.yaml b/openapi/v1/schemas/integration/StudySearchInfo.yaml index 9b8d9e2d..e69de29b 100644 --- a/openapi/v1/schemas/integration/StudySearchInfo.yaml +++ b/openapi/v1/schemas/integration/StudySearchInfo.yaml @@ -1,46 +0,0 @@ -example: - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - accession: - type: string - name: - type: string - owner: - type: string - fileCreation: - format: int64 - type: string - size: - format: int64 - type: integer - hasFacs: - type: boolean - hasGenomic: - type: boolean - hasTranscriptomics: - type: boolean - summary: - items: - $ref: "#/components/schemas/MetainfoKeyForSummary" - type: array -type: object -components: - schemas: - MetainfoKeyForSummary: - $ref: "./MetainfoKeyForSummary.yaml" diff --git a/openapi/v1/schemas/integration/StudyValidationSummary.yaml b/openapi/v1/schemas/integration/StudyValidationSummary.yaml index 49c83492..e69de29b 100644 --- a/openapi/v1/schemas/integration/StudyValidationSummary.yaml +++ b/openapi/v1/schemas/integration/StudyValidationSummary.yaml @@ -1,80 +0,0 @@ -example: - samples: - - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - samples: - items: - $ref: "#/components/schemas/GroupValidationSummary" - type: array -type: object -components: - schemas: - GroupValidationSummary: - $ref: "./GroupValidationSummary.yaml" diff --git a/openapi/v1/schemas/integration/ValidationError.yaml b/openapi/v1/schemas/integration/ValidationError.yaml index 6ce7c01e..e69de29b 100644 --- a/openapi/v1/schemas/integration/ValidationError.yaml +++ b/openapi/v1/schemas/integration/ValidationError.yaml @@ -1,15 +0,0 @@ -example: - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - errorType: - enum: - - VALUE_NOT_SET - - VOCABULARY_NOT_FOUND - - TYPE_NOT_MATCH - - MISSING_ATTRIBUTE - - SYNONYM_ATTRIBUTE - type: string - errorMessage: - type: string -type: object diff --git a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml index 916133dd..e69de29b 100644 --- a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml +++ b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml @@ -1,9 +0,0 @@ -example: - type: type - message: message -properties: - type: - type: string - message: - type: string -type: object diff --git a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml index e4b4dce5..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml @@ -1,28 +0,0 @@ -properties: - metadata: - type: string - format: binary - description: The metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. - data: - type: string - format: binary - description: A file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. - studyAccession: - example: GSF334953 - type: string - description: An accession of a study the file will be associated with. - dataClass: - example: Proteomics - type: string - description: A mandatory parameter with the value from a limited set of values (see request description). -required: -- data -- studyAccession -- dataClass -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportAFileRequest.yaml b/openapi/v1/schemas/job/ImportAFileRequest.yaml index eb4ec551..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportAFileRequest.yaml +++ b/openapi/v1/schemas/job/ImportAFileRequest.yaml @@ -1,34 +0,0 @@ -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf - studyAccession: GSF334953 - dataClass: Proteomics -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - type: string - description: Specifies the URL of a metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf - type: string - description: Specifies a link to a file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. - studyAccession: - example: GSF334953 - type: string - dataClass: - example: Proteomics - type: string - description: A mandatory parameter with the value from a limited set of values (see request description). -required: -- dataLink -- studyAccession -- dataClass -type: object diff --git a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml index 4e3f04e0..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml @@ -1,18 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - data: - type: string - format: binary -required: - - studyId - - data -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportCellsRequest.yaml b/openapi/v1/schemas/job/ImportCellsRequest.yaml index c854b4a6..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportCellsRequest.yaml +++ b/openapi/v1/schemas/job/ImportCellsRequest.yaml @@ -1,9 +0,0 @@ -example: - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv -properties: - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv - type: string -required: -- dataLink -type: object diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml index 564d94ca..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml @@ -1,34 +0,0 @@ -allOf: -- $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" -properties: - numberOfFeatureAttributes: - description: Integer value that specifies the number of columns related to the - feature in the uploaded data frame, and indicates the starting position of the - sample data. This attribute is not needed if the uploaded file is in GCT format. - example: 5 - type: integer - dataClass: - description: "A mandatory parameter with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics`, - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, - `Document`, `Other`. \nIn case the parameter is not set - the dataClass is automatically defined as `Other`." - example: Proteomics - type: string - measurementSeparator: - description: 'This parameter is necessary when your file contains multiple measurement - columns for each sample, library, or preparation. It represents the character - that distinguishes the sample/library/preparation name from the measurement - name in column headers. Supported separators include `. , : ; _ - / \ |`, with - the allowance for multi-character separators.' - example: ':' - type: string -components: - schemas: - ImportSignalRunFomMultipartRequest: - $ref: "./ImportSignalRunFomMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml index 01bd04fc..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml +++ b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml @@ -1,42 +0,0 @@ -allOf: -- $ref: "#/components/schemas/ImportSignalRunRequest" -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - templateId: GSF334953 - previousVersion: GSF334953 - numberOfFeatureAttributes: 5 - dataClass: Proteomics - measurementSeparator: ':' -properties: - numberOfFeatureAttributes: - description: Integer value that specifies the number of columns related to the - feature in the uploaded data frame, and indicates the starting position of the - sample data. This attribute is not needed if the uploaded file is in GCT format. - example: 5 - type: integer - dataClass: - description: "A mandatory parameter with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, - `Microbiome / Metagenomics`, `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, - `Document`, `Other`. \nIn case the parameter is not set - the dataClass is automatically defined as `Other`." - example: Proteomics - type: string - measurementSeparator: - description: 'This parameter is necessary when your file contains multiple measurement - columns for each sample, library, or preparation. It represents the character - that distinguishes the sample/library/preparation name from the measurement - name in column headers. Supported separators include `. , : ; _ - / \ |`, with - the allowance for multi-character separators.' - example: ':' - type: string -components: - schemas: - ImportSignalRunRequest: - $ref: "./ImportSignalRunRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml index a142f891..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml @@ -1,21 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - templateId: - example: GSF334953 - type: string - metadata: - type: string - format: binary -required: - - studyId - - metadata -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportMetadataRequest.yaml b/openapi/v1/schemas/job/ImportMetadataRequest.yaml index d600e38a..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportMetadataRequest.yaml +++ b/openapi/v1/schemas/job/ImportMetadataRequest.yaml @@ -1,21 +0,0 @@ -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - templateId: GSF334953 -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - type: string - templateId: - example: GSF334953 - type: string -required: -- metadataLink -type: object diff --git a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml index 43f4d419..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml @@ -1,27 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - metadata: - type: string - format: binary - data: - type: string - format: binary - templateId: - example: GSF334953 - type: string - previousVersion: - example: GSF334953 - type: string -required: - - studyId - - data -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml index 9c4194a0..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml +++ b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml @@ -1,30 +0,0 @@ -description: import signal data request -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - templateId: GSF334953 - previousVersion: GSF334953 -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - type: string - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - type: string - templateId: - example: GSF334953 - type: string - previousVersion: - example: GSF334953 - type: string -required: -- dataLink -type: object diff --git a/openapi/v1/schemas/job/Info.yaml b/openapi/v1/schemas/job/Info.yaml index cfd3af82..e69de29b 100644 --- a/openapi/v1/schemas/job/Info.yaml +++ b/openapi/v1/schemas/job/Info.yaml @@ -1,48 +0,0 @@ -description: job execution information -example: - jobName: Protein folding - startedBy: job@genestack.com - createTime: 2000-01-23T04:56:07+00:00 - jobExecId: 12345 - endTime: 2000-01-23T04:56:07+00:00 - status: STARTED -properties: - jobExecId: - description: job execution id - example: 12345 - format: int64 - type: integer - startedBy: - description: user name who started the job - example: job@genestack.com - type: string - jobName: - description: actual job name - example: Protein folding - type: string - status: - description: current job status - enum: - - COMPLETED - - STARTING - - RUNNING - - STOPPING - - STOPPED - - FAILED - - ABANDONED - - UNKNOWN - example: STARTED - type: string - createTime: - format: date-time - type: string - endTime: - format: date-time - type: string -required: -- createTime -- jobExecId -- jobName -- startedBy -- status -type: object diff --git a/openapi/v1/schemas/job/JobRuntimeError.yaml b/openapi/v1/schemas/job/JobRuntimeError.yaml index fc3b0436..e69de29b 100644 --- a/openapi/v1/schemas/job/JobRuntimeError.yaml +++ b/openapi/v1/schemas/job/JobRuntimeError.yaml @@ -1,19 +0,0 @@ -example: - stack: - - type: type - message: message - - type: type - message: message - stage: stage -properties: - stage: - type: string - stack: - items: - $ref: "#/components/schemas/ExceptionTypeAndMessage" - type: array -type: object -components: - schemas: - ExceptionTypeAndMessage: - $ref: "./ExceptionTypeAndMessage.yaml" diff --git a/openapi/v1/schemas/job/Output.yaml b/openapi/v1/schemas/job/Output.yaml index f4a6601c..e69de29b 100644 --- a/openapi/v1/schemas/job/Output.yaml +++ b/openapi/v1/schemas/job/Output.yaml @@ -1,48 +0,0 @@ -description: job execution output -example: - result: {} - errors: - - stack: - - type: type - message: message - - type: type - message: message - stage: stage - - stack: - - type: type - message: message - - type: type - message: message - stage: stage - status: COMPLETED -properties: - status: - description: current job status - enum: - - COMPLETED - - STARTING - - RUNNING - - STOPPING - - STOPPED - - FAILED - - ABANDONED - - UNKNOWN - example: COMPLETED - type: string - result: - description: job result object (available if job completed successfully) - properties: {} - type: object - errors: - description: array of errors occurred during execution of the job (available if - job failed) - items: - $ref: "#/components/schemas/JobRuntimeError" - type: array -required: -- status -type: object -components: - schemas: - JobRuntimeError: - $ref: "./JobRuntimeError.yaml" diff --git a/openapi/v1/schemas/library/Library.yaml b/openapi/v1/schemas/library/Library.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/library/Library.yaml +++ b/openapi/v1/schemas/library/Library.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/manage-data/DetachedCollection.yaml b/openapi/v1/schemas/manage-data/DetachedCollection.yaml index 55bd2a9a..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/DetachedCollection.yaml +++ b/openapi/v1/schemas/manage-data/DetachedCollection.yaml @@ -1,25 +0,0 @@ -example: - cursor: cursor - data: - - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail - - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail -properties: - data: - items: - $ref: "#/components/schemas/DetachedObject" - type: array - cursor: - type: string -required: -- data -type: object -components: - schemas: - DetachedObject: - $ref: "./DetachedObject.yaml" diff --git a/openapi/v1/schemas/manage-data/DetachedObject.yaml b/openapi/v1/schemas/manage-data/DetachedObject.yaml index 99b1c1fc..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/DetachedObject.yaml +++ b/openapi/v1/schemas/manage-data/DetachedObject.yaml @@ -1,30 +0,0 @@ -example: - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - detachedObjectType: - enum: - - STUDY - - SAMPLE_GROUP - - LIBRARY_GROUP - - PREPARATION_GROUP - - CELL_GROUP - - TABULAR_DATA - - GENE_VARIANT - - FLOW_CYTOMETRY - type: string - ownerEmail: - type: string - createdAt: - format: date-time - type: string -required: -- createdAt -- detachedObjectType -- genestack:accession -- ownerEmail -type: object diff --git a/openapi/v1/schemas/manage-data/ManagedObject.yaml b/openapi/v1/schemas/manage-data/ManagedObject.yaml index 602b67fb..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/ManagedObject.yaml +++ b/openapi/v1/schemas/manage-data/ManagedObject.yaml @@ -1,21 +0,0 @@ -example: - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - objectType: objectType - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - objectType: - type: string - ownerEmail: - type: string - createdAt: - format: date-time - type: string -required: -- createdAt -- genestack:accession -- objectType -- ownerEmail -type: object diff --git a/openapi/v1/schemas/preparation/Preparation.yaml b/openapi/v1/schemas/preparation/Preparation.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/preparation/Preparation.yaml +++ b/openapi/v1/schemas/preparation/Preparation.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml index 093b0e72..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml @@ -1,26 +0,0 @@ -description: Create XrefSet request body -example: - metadata: - key: metadata - xrefSetType: gene-transcript - dataLink: '"http://example-url.com/my-mapping.tsv"' -properties: - xrefSetType: - description: Type of data stored in XrefSet - enum: - - gene-transcript - type: string - dataLink: - description: Mapping file link - example: '"http://example-url.com/my-mapping.tsv"' - type: string - metadata: - patternProperties: - "^.*$": - type: string - description: Additional user metadata - type: object -required: -- dataLink -- xrefSetType -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml index 34aed5f4..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml @@ -1,56 +0,0 @@ -description: Create XrefSet response body -example: - lastUpdated: 1602838500612 - metadata: - key: metadata - createdDate: 1602838500612 - createdBy: '"User007"' - warnings: - - warnings - - warnings - xrefSetType: gene-transcript - xrefSetId: '"GSF0000013"' -properties: - xrefSetId: - description: Accession of the created XrefSet - example: '"GSF0000013"' - type: string - createdBy: - description: Name of the user created XrefSet - example: '"User007"' - type: string - createdDate: - description: Date of XrefSet creation - example: 1602838500612 - format: int64 - type: integer - lastUpdated: - description: Date of XrefSet last update. For a new entity lastUpdated = createdDate - example: 1602838500612 - format: int64 - type: integer - xrefSetType: - description: Type of data stored in XrefSet - enum: - - gene-transcript - type: string - metadata: - patternProperties: - "^.*$": - type: string - description: Additional user metadata - type: object - warnings: - description: Warnings, if any - items: - type: string - type: array -required: -- createdBy -- createdDate -- lastUpdated -- metadata -- warnings -- xrefSetId -- xrefSetType -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml index 340e7627..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml @@ -1,29 +0,0 @@ -description: Xrefset metadata -example: - lastUpdated: 1594846270242 - createdDate: 1594846270242 - data: - key: data - createdBy: '"Genestack Superuser"' - xrefSetId: '"GSF000477"' -properties: - xrefSetId: - example: '"GSF000477"' - type: string - createdBy: - example: '"Genestack Superuser"' - type: string - createdDate: - example: 1594846270242 - format: int64 - type: integer - lastUpdated: - example: 1594846270242 - format: int64 - type: integer - data: - patternProperties: - "^.*$": - type: string - type: object -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml index 085a1607..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml @@ -1,19 +0,0 @@ -description: Result of a search query for xrefsets -example: - cursor: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' - result: - - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' - - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' -properties: - cursor: - example: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' - type: string - result: - items: - $ref: "XrefSetSearchResultEntry.yaml" - type: array -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml index a20a604c..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml @@ -1,17 +0,0 @@ -example: - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' -properties: - xrefSetId: - example: '"GSF0000013"' - type: string - sourceId: - example: '"ENSG00000231103.2"' - type: string - targetIds: - example: '["ENST00000617423.4", "ENST00000334232.8"]' - items: - type: string - type: array -type: object diff --git a/openapi/v1/schemas/reference-genome/RGItem.yaml b/openapi/v1/schemas/reference-genome/RGItem.yaml index 53af5e3b..e69de29b 100644 --- a/openapi/v1/schemas/reference-genome/RGItem.yaml +++ b/openapi/v1/schemas/reference-genome/RGItem.yaml @@ -1,31 +0,0 @@ -example: - genestack:accession: GSF000009 - annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz - organism: Homo sapiens - assembly: GRCh38 - release: 112 - name: Homo sapiens reference genome GRCh38.112 - initializationStatus: Complete - createdAt: 2000-01-23T04:56:070Z - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - annotationUrl: - type: string - format: uri - organism: - type: string - assembly: - type: string - release: - type: string - name: - type: string - initializationStatus: - type: string - createdAt: - type: string - ownerEmail: - type: string -type: object diff --git a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml index 6f624ad6..e69de29b 100644 --- a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml +++ b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml @@ -1,23 +0,0 @@ -example: - annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz - organism: Homo sapiens - assembly: GRCh38 - release: "112" - name: Homo sapiens reference genome GRCh38.112 -properties: - annotationUrl: - type: string - format: uri - organism: - type: string - assembly: - type: string - release: - type: string - name: - type: string -required: -- organism -- assembly -- release -type: object diff --git a/openapi/v1/schemas/sample/Sample.yaml b/openapi/v1/schemas/sample/Sample.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/sample/Sample.yaml +++ b/openapi/v1/schemas/sample/Sample.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/scim/BaseErrorResponse.yaml b/openapi/v1/schemas/scim/BaseErrorResponse.yaml index b095cc65..e69de29b 100644 --- a/openapi/v1/schemas/scim/BaseErrorResponse.yaml +++ b/openapi/v1/schemas/scim/BaseErrorResponse.yaml @@ -1,10 +0,0 @@ -properties: - error: - $ref: "#/components/schemas/ErrorMessage" -required: -- error -type: object -components: - schemas: - ErrorMessage: - $ref: "./ErrorMessage.yaml" diff --git a/openapi/v1/schemas/scim/Email.yaml b/openapi/v1/schemas/scim/Email.yaml index 34d51324..e69de29b 100644 --- a/openapi/v1/schemas/scim/Email.yaml +++ b/openapi/v1/schemas/scim/Email.yaml @@ -1,14 +0,0 @@ -example: - type: work - value: value - primary: true -properties: - type: - enum: - - work - type: string - value: - type: string - primary: - type: boolean -type: object diff --git a/openapi/v1/schemas/scim/ErrorMessage.yaml b/openapi/v1/schemas/scim/ErrorMessage.yaml index e2f428bf..e69de29b 100644 --- a/openapi/v1/schemas/scim/ErrorMessage.yaml +++ b/openapi/v1/schemas/scim/ErrorMessage.yaml @@ -1,7 +0,0 @@ -properties: - message: - description: Detailed error message - type: string -required: -- message -type: object diff --git a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml index 3a43740a..e69de29b 100644 --- a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml +++ b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml @@ -1,26 +0,0 @@ -properties: - Resources: - description: List of groups - items: - $ref: "#/components/schemas/GroupResponse" - type: array - itemsPerPage: - format: int64 - type: integer - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:ListResponse - type: string - type: array - startIndex: - format: int64 - type: integer - totalResults: - format: int64 - type: integer -type: object -components: - schemas: - GroupResponse: - $ref: "./GroupResponse.yaml" diff --git a/openapi/v1/schemas/scim/FilterUsersResponse.yaml b/openapi/v1/schemas/scim/FilterUsersResponse.yaml index 6294c5cb..e69de29b 100644 --- a/openapi/v1/schemas/scim/FilterUsersResponse.yaml +++ b/openapi/v1/schemas/scim/FilterUsersResponse.yaml @@ -1,26 +0,0 @@ -properties: - Resources: - description: List of users - items: - $ref: "#/components/schemas/UserResponse" - type: array - itemsPerPage: - format: int64 - type: integer - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:ListResponse - type: string - type: array - startIndex: - format: int64 - type: integer - totalResults: - format: int64 - type: integer -type: object -components: - schemas: - UserResponse: - $ref: "./UserResponse.yaml" diff --git a/openapi/v1/schemas/scim/Group.yaml b/openapi/v1/schemas/scim/Group.yaml index ce4b620a..e69de29b 100644 --- a/openapi/v1/schemas/scim/Group.yaml +++ b/openapi/v1/schemas/scim/Group.yaml @@ -1,38 +0,0 @@ -example: - displayName: displayName - schemas: - - urn:ietf:params:scim:schemas:core:2.0:Group - - urn:ietf:params:scim:schemas:core:2.0:Group - members: - - display: display - value: value - - display: display - value: value - externalId: externalId - id: id -properties: - externalId: - description: External unique resource id - type: string - id: - description: Unique resource id - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:schemas:core:2.0:Group - type: string - type: array - members: - items: - $ref: "#/components/schemas/Member" - type: array - displayName: - type: string -required: -- displayName -type: object -components: - schemas: - Member: - $ref: "./Member.yaml" diff --git a/openapi/v1/schemas/scim/GroupPatch.yaml b/openapi/v1/schemas/scim/GroupPatch.yaml index daf63b73..e69de29b 100644 --- a/openapi/v1/schemas/scim/GroupPatch.yaml +++ b/openapi/v1/schemas/scim/GroupPatch.yaml @@ -1,31 +0,0 @@ -example: - schemas: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - - urn:ietf:params:scim:api:messages:2.0:PatchOp - Operations: - - op: add - path: path - value: {} - - op: add - path: path - value: {} -properties: - Operations: - description: Patch operations list - items: - $ref: "#/components/schemas/PatchOperation" - type: array - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - type: string - type: array -required: -- Operations -- schemas -type: object -components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" diff --git a/openapi/v1/schemas/scim/GroupResponse.yaml b/openapi/v1/schemas/scim/GroupResponse.yaml index acbbaf7a..e69de29b 100644 --- a/openapi/v1/schemas/scim/GroupResponse.yaml +++ b/openapi/v1/schemas/scim/GroupResponse.yaml @@ -1,12 +0,0 @@ -allOf: -- $ref: "#/components/schemas/Group" -- properties: - meta: - $ref: "#/components/schemas/Meta" - type: object -components: - schemas: - Group: - $ref: "./Group.yaml" - Meta: - $ref: "./Meta.yaml" diff --git a/openapi/v1/schemas/scim/Member.yaml b/openapi/v1/schemas/scim/Member.yaml index e12a32d1..e69de29b 100644 --- a/openapi/v1/schemas/scim/Member.yaml +++ b/openapi/v1/schemas/scim/Member.yaml @@ -1,16 +0,0 @@ -example: - display: display - value: value -properties: - value: - type: string - display: - type: string - $ref: - description: The URI of the member resource - format: uri - type: string -required: -- $ref -- value -type: object diff --git a/openapi/v1/schemas/scim/Meta.yaml b/openapi/v1/schemas/scim/Meta.yaml index fe4f24b4..e69de29b 100644 --- a/openapi/v1/schemas/scim/Meta.yaml +++ b/openapi/v1/schemas/scim/Meta.yaml @@ -1,14 +0,0 @@ -description: resource metadata -properties: - created: - format: date-time - type: string - lastModified: - format: date-time - type: string - resourceType: - enum: - - User - - Group - type: string -type: object diff --git a/openapi/v1/schemas/scim/PatchOperation.yaml b/openapi/v1/schemas/scim/PatchOperation.yaml index b48b7e07..e69de29b 100644 --- a/openapi/v1/schemas/scim/PatchOperation.yaml +++ b/openapi/v1/schemas/scim/PatchOperation.yaml @@ -1,20 +0,0 @@ -example: - op: add - path: path - value: {} -properties: - op: - enum: - - add - - replace - - remove - type: string - path: - type: string - value: - description: Corresponding 'value' of that field specified by 'path' - properties: {} - type: object -required: -- op -type: object diff --git a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml index f7412161..e69de29b 100644 --- a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml +++ b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml @@ -1,30 +0,0 @@ -properties: - detail: - description: Detailed error message - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:Error - type: string - type: array - scimType: - description: Bad request type when status code is 400 - enum: - - uniqueness - - tooMany - - mutability - - sensitive - - invalidSyntax - - invalidFilter - - invalidPath - - invalidValue - - invalidVers - - noTarget - type: string - status: - description: Same as HTTP status code, e.g. 400, 403, etc. - type: string -required: -- status -type: object diff --git a/openapi/v1/schemas/scim/User.yaml b/openapi/v1/schemas/scim/User.yaml index 5f91e2a5..e69de29b 100644 --- a/openapi/v1/schemas/scim/User.yaml +++ b/openapi/v1/schemas/scim/User.yaml @@ -1,49 +0,0 @@ -example: - emails: - - type: work - value: value - primary: true - - type: work - value: value - primary: true - displayName: displayName - schemas: - - urn:ietf:params:scim:schemas:core:2.0:User - - urn:ietf:params:scim:schemas:core:2.0:User - active: true - externalId: externalId - id: id - userName: userName -properties: - active: - description: User status - type: boolean - emails: - items: - $ref: "#/components/schemas/Email" - type: array - externalId: - description: External unique resource id - type: string - id: - description: Unique resource id - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:schemas:core:2.0:User - type: string - type: array - userName: - type: string - displayName: - type: string -required: -- active -- displayName -- emails -type: object -components: - schemas: - Email: - $ref: "./Email.yaml" diff --git a/openapi/v1/schemas/scim/UserPatch.yaml b/openapi/v1/schemas/scim/UserPatch.yaml index daf63b73..e69de29b 100644 --- a/openapi/v1/schemas/scim/UserPatch.yaml +++ b/openapi/v1/schemas/scim/UserPatch.yaml @@ -1,31 +0,0 @@ -example: - schemas: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - - urn:ietf:params:scim:api:messages:2.0:PatchOp - Operations: - - op: add - path: path - value: {} - - op: add - path: path - value: {} -properties: - Operations: - description: Patch operations list - items: - $ref: "#/components/schemas/PatchOperation" - type: array - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - type: string - type: array -required: -- Operations -- schemas -type: object -components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" diff --git a/openapi/v1/schemas/scim/UserResponse.yaml b/openapi/v1/schemas/scim/UserResponse.yaml index b47ace64..e69de29b 100644 --- a/openapi/v1/schemas/scim/UserResponse.yaml +++ b/openapi/v1/schemas/scim/UserResponse.yaml @@ -1,12 +0,0 @@ -allOf: -- $ref: "#/components/schemas/User" -- properties: - meta: - $ref: "#/components/schemas/Meta" - type: object -components: - schemas: - User: - $ref: "./User.yaml" - Meta: - $ref: "./Meta.yaml" diff --git a/openapi/v1/schemas/study/Study.yaml b/openapi/v1/schemas/study/Study.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/study/Study.yaml +++ b/openapi/v1/schemas/study/Study.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/tasks/TaskInfo.yaml b/openapi/v1/schemas/tasks/TaskInfo.yaml index abb8be38..e69de29b 100644 --- a/openapi/v1/schemas/tasks/TaskInfo.yaml +++ b/openapi/v1/schemas/tasks/TaskInfo.yaml @@ -1,43 +0,0 @@ -example: - application: application - createdBy: createdBy - endedAt: 6 - name: name - startedAt: 0 - id: id - status: CREATED -properties: - id: - readOnly: true - type: string - name: - readOnly: true - type: string - status: - enum: - - CREATED - - QUEUEING - - QUEUED - - STARTING - - RUNNING - - DONE - - FAILED - - BLOCKED_BY_DEPENDENCY_FAILURE - - KILLED - readOnly: true - type: string - application: - readOnly: true - type: string - startedAt: - format: int64 - readOnly: true - type: integer - endedAt: - format: int64 - readOnly: true - type: integer - createdBy: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/variant/VariantItem.yaml b/openapi/v1/schemas/variant/VariantItem.yaml index 0edf25e6..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantItem.yaml +++ b/openapi/v1/schemas/variant/VariantItem.yaml @@ -1,82 +0,0 @@ -example: - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: A - alt: - - GC - - GAATTTA - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - variant: - type: object - properties: - chrom: - type: string - pos: - format: int64 - type: integer - id: - type: array - items: - type: string - ref: - type: string - alt: - type: array - items: - type: string - qual: - type: number - filter: - type: array - items: - type: string - info: - type: object - patternProperties: - "^.*$": - type: array - items: - oneOf: - - type: string - - type: number - genotype: - type: object - patternProperties: - "^.*$": - type: string -type: object diff --git a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml index 92f53380..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml +++ b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml @@ -1,15 +0,0 @@ -example: - itemId: itemId - metadata: {} - annotation: {} -properties: - itemId: - readOnly: true - type: string - metadata: - type: object - annotation: - type: object - referenceGenome: - type: object -type: object diff --git a/openapi/v1/schemas/variant/VariantResponse.yaml b/openapi/v1/schemas/variant/VariantResponse.yaml index d85e9b72..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantResponse.yaml +++ b/openapi/v1/schemas/variant/VariantResponse.yaml @@ -1,71 +0,0 @@ -example: - cursor: cursor - data: - - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: reference - alt: - - alteration - - alteration - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype - - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: reference - alt: - - alteration - - alteration - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype -properties: - data: - items: - $ref: "#/components/schemas/VariantItem" - type: array - cursor: - type: string -type: object -components: - schemas: - VariantItem: - $ref: "VariantItem.yaml" From d0d564815ef11af2beb6e6d3a093d1c8264222c0 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:32:11 +0100 Subject: [PATCH 05/29] [ODM-13126] Finish moving spec --- openapi/v1/odm.yaml | 522 +++++++----------- openapi/v1/schemas/cell/CellGroupRequest.yaml | 32 -- ...ormationParametersForMultipartRequest.yaml | 14 - 3 files changed, 197 insertions(+), 371 deletions(-) diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 745744c1..8385d682 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -23925,10 +23925,6 @@ components: type: array cursor: type: string - components: - schemas: - Cell: - $ref: "./Cell.yaml" example: cursor: "GSF123456-AAAGATGGTTCCTCCA-1" data: @@ -24061,10 +24057,6 @@ components: cursor: type: string type: object - components: - schemas: - ExpressionItem: - $ref: "./ExpressionItem.yaml" IntegrationHelper: type: object ListResponse: @@ -24087,10 +24079,6 @@ components: type: object type: array type: object - components: - schemas: - MetaResponse: - $ref: "./MetaResponse.yaml" MetaResponse: example: pagination: @@ -24102,10 +24090,6 @@ components: pagination: $ref: "#/components/schemas/PaginationInfo" type: object - components: - schemas: - PaginationInfo: - $ref: "./PaginationInfo.yaml" MetadataContent: type: object MetadataWithId: @@ -24249,10 +24233,6 @@ components: cursor: type: string type: object - components: - schemas: - FlowCytometryItem: - $ref: "./FlowCytometryItem.yaml" AttributeInvalidValue: example: count: 0 @@ -24276,10 +24256,6 @@ components: $ref: "#/components/schemas/ValidationError" type: array type: object - components: - schemas: - ValidationError: - $ref: "./ValidationError.yaml" AttributeValidationSummary: example: attributeName: attributeName @@ -24306,10 +24282,6 @@ components: $ref: "#/components/schemas/AttributeInvalidValue" type: array type: object - components: - schemas: - AttributeInvalidValue: - $ref: "./AttributeInvalidValue.yaml" BatchOfIds: description: Request model for getting links by many IDs. example: @@ -24360,10 +24332,6 @@ components: relationships: $ref: "#/components/schemas/Relationships" type: object - components: - schemas: - Relationships: - $ref: "./Relationships.yaml" GroupValidationSummary: example: groupAccession: groupAccession @@ -24408,10 +24376,6 @@ components: $ref: "#/components/schemas/AttributeValidationSummary" type: array type: object - components: - schemas: - AttributeValidationSummary: - $ref: "./AttributeValidationSummary.yaml" IMetadata: properties: source: @@ -24473,12 +24437,6 @@ components: relationships: $ref: "#/components/schemas/Relationships" type: object - components: - schemas: - IMetadata: - $ref: "./IMetadata.yaml" - Relationships: - $ref: "./Relationships.yaml" OmicsResponse: example: cursor: cursor @@ -24519,10 +24477,6 @@ components: cursor: type: string type: object - components: - schemas: - DataPresentation: - $ref: "./DataPresentation.yaml" OmicsResponseMetadataPresentation: properties: data: @@ -24538,10 +24492,6 @@ components: cursor: type: string type: object - components: - schemas: - MetadataPresentation: - $ref: "./MetadataPresentation.yaml" OmicsResponseMetadataWithId: properties: data: @@ -24557,10 +24507,6 @@ components: cursor: type: string type: object - components: - schemas: - MetadataWithId: - $ref: "../common/MetadataWithId.yaml" Preparation: type: object Relationships: @@ -24673,10 +24619,6 @@ components: $ref: "#/components/schemas/GroupValidationSummary" type: array type: object - components: - schemas: - GroupValidationSummary: - $ref: "./GroupValidationSummary.yaml" TaskInfo: example: application: application @@ -24762,12 +24704,6 @@ components: page: $ref: "#/components/schemas/PageRequest" type: object - components: - schemas: - AppliedFilter: - $ref: "./AppliedFilter.yaml" - PageRequest: - $ref: "./PageRequest.yaml" AppliedFilter: properties: type: @@ -24874,12 +24810,6 @@ components: $ref: "#/components/schemas/FilterOptionGroup" type: array type: object - components: - schemas: - ObjectsPage: - $ref: "./ObjectsPage.yaml" - FilterOptionGroup: - $ref: "./FilterOptionGroup.yaml" ObjectsPage: example: filteredCount: 0 @@ -24932,12 +24862,6 @@ components: $ref: "#/components/schemas/StudySearchInfo" type: array type: object - components: - schemas: - PageRequest: - $ref: "./PageRequest.yaml" - StudySearchInfo: - $ref: "./StudySearchInfo.yaml" StudySearchInfo: example: owner: owner @@ -24981,10 +24905,6 @@ components: $ref: "#/components/schemas/MetainfoKeyForSummary" type: array type: object - components: - schemas: - MetainfoKeyForSummary: - $ref: "./MetainfoKeyForSummary.yaml" MetainfoKeyForSummary: example: values: @@ -25022,10 +24942,6 @@ components: $ref: "#/components/schemas/FilterOption" type: array type: object - components: - schemas: - FilterOption: - $ref: "./FilterOption.yaml" FilterOption: example: filterId: filterId @@ -25047,9 +24963,9 @@ components: type: object properties: caseGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' controlGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' exQuery: type: string example: 'feature=ENSG00000230368,ENSG00000188976' @@ -25078,97 +24994,95 @@ components: required: - resultsPerGene - pagination - components: - schemas: - GeneEntry: - type: object - # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. - properties: - geneId: - type: string - description: Gene identifier. - example: ENSG00000230368 - caseCellCount: - type: integer - description: Number of cells expressing the gene in the case group. - example: 8450 - controlCellCount: - type: integer - description: Number of cells expressing the gene in the control group. - example: 8123 - caseAvgEx: - type: number - format: double - description: Mean expression level across case cells. - example: 1.24 - controlAvgEx: - type: number - format: double - description: Mean expression level across control cells. - example: 0.62 - exDifference: - type: number - format: double - description: Numerical difference between average expressions. - example: 0.62 - foldChange: - type: number - format: double - description: Ratio of average expressions between case and control groups. - example: 2.0 - log2FC: - type: number - format: double - description: Logarithm with base 2 of the Fold change value. - example: 1.4594316186372973 - mannWhitneyU: - type: number - format: double - description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. - example: 1.5 - pValue: - type: number - format: double - description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - example: 0.5536169919657803 - required: - - geneId - - caseCellCount - - controlCellCount - - caseAvgEx - - controlAvgEx - - exDifference - - foldChange - - log2FC - - mannWhitneyU - - pValue - Pagination: - type: object - properties: - currentResultsCount: - type: integer - format: int32 - description: Number of results returned in the current response. - example: 1 - limit: - type: integer - format: int32 - description: Results limit, used in the request. - example: 2000 - offset: - type: integer - format: int32 - description: Results offset, used in the request. - example: 0 - required: - - currentResultsCount - - limit - - offset + GeneEntry: + type: object + # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. + properties: + geneId: + type: string + description: Gene identifier. + example: ENSG00000230368 + caseCellCount: + type: integer + description: Number of cells expressing the gene in the case group. + example: 8450 + controlCellCount: + type: integer + description: Number of cells expressing the gene in the control group. + example: 8123 + caseAvgEx: + type: number + format: double + description: Mean expression level across case cells. + example: 1.24 + controlAvgEx: + type: number + format: double + description: Mean expression level across control cells. + example: 0.62 + exDifference: + type: number + format: double + description: Numerical difference between average expressions. + example: 0.62 + foldChange: + type: number + format: double + description: Ratio of average expressions between case and control groups. + example: 2.0 + log2FC: + type: number + format: double + description: Logarithm with base 2 of the Fold change value. + example: 1.4594316186372973 + mannWhitneyU: + type: number + format: double + description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. + example: 1.5 + pValue: + type: number + format: double + description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. + example: 0.5536169919657803 + required: + - geneId + - caseCellCount + - controlCellCount + - caseAvgEx + - controlAvgEx + - exDifference + - foldChange + - log2FC + - mannWhitneyU + - pValue + Pagination: + type: object + properties: + currentResultsCount: + type: integer + format: int32 + description: Number of results returned in the current response. + example: 1 + limit: + type: integer + format: int32 + description: Results limit, used in the request. + example: 2000 + offset: + type: integer + format: int32 + description: Results offset, used in the request. + example: 0 + required: + - currentResultsCount + - limit + - offset GSRequest: type: object properties: cellGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' geneNames: type: array items: @@ -25189,73 +25103,71 @@ components: type: array items: $ref: '#/components/schemas/GeneSummaryEntry' - components: - schemas: - GeneSummaryEntry: - type: object - description: Per-gene summary statistics. - properties: - geneId: - type: string - description: Gene identifier. - example: "ENSG00000111640" - cellCount: - type: integer - format: int32 - description: Number of cells expressing the gene. - example: 8968167 - mean: - type: number - format: double - description: Mean expression - example: 7.747614311820911 - median: - type: number - format: double - description: Median expression - example: 7 - stdDev: - type: number - format: double - description: Standard deviation - example: 6.499314669429827 - min: - type: number - format: double - description: Minimum value - example: 1 - max: - type: number - format: double - description: Maximum value - example: 496 - quantiles: - type: array - description: | - List of quantile values from 0 to 1 (inclusive), with step 0.1 - example: | - [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] - items: - type: number - format: double - histogram: - type: array - description: | - Histogram as a list of [binStart, binEnd, count] triples. - Length depends of the selected sample size, maximum is 20. - example: | - [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), - (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] - items: - type: array - items: - type: number - format: double + GeneSummaryEntry: + type: object + description: Per-gene summary statistics. + properties: + geneId: + type: string + description: Gene identifier. + example: "ENSG00000111640" + cellCount: + type: integer + format: int32 + description: Number of cells expressing the gene. + example: 8968167 + mean: + type: number + format: double + description: Mean expression + example: 7.747614311820911 + median: + type: number + format: double + description: Median expression + example: 7 + stdDev: + type: number + format: double + description: Standard deviation + example: 6.499314669429827 + min: + type: number + format: double + description: Minimum value + example: 1 + max: + type: number + format: double + description: Maximum value + example: 496 + quantiles: + type: array + description: | + List of quantile values from 0 to 1 (inclusive), with step 0.1 + example: | + [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] + items: + type: number + format: double + histogram: + type: array + description: | + Histogram as a list of [binStart, binEnd, count] triples. + Length depends of the selected sample size, maximum is 20. + example: | + [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), + (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] + items: + type: array + items: + type: number + format: double CRRequest: type: object properties: cellGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' exQuery: type: string example: '-3 < value < 3' @@ -25316,10 +25228,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportMetadataRequest: example: metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv @@ -25360,10 +25268,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportSignalRunRequest: description: import signal data request example: @@ -25419,10 +25323,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportExpressionSignalRunRequest: allOf: - $ref: "#/components/schemas/ImportSignalRunRequest" @@ -25462,10 +25362,6 @@ components: the allowance for multi-character separators.' example: ':' type: string - components: - schemas: - ImportSignalRunRequest: - $ref: "./ImportSignalRunRequest.yaml" ImportExpressionSignalRunFromMultipartRequest: allOf: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" @@ -25497,10 +25393,6 @@ components: the allowance for multi-character separators.' example: ':' type: string - components: - schemas: - ImportSignalRunFomMultipartRequest: - $ref: "./ImportSignalRunFomMultipartRequest.yaml" ImportAFileRequest: example: metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv @@ -25561,10 +25453,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" Info: description: job execution information example: @@ -25630,10 +25518,6 @@ components: $ref: "#/components/schemas/ExceptionTypeAndMessage" type: array type: object - components: - schemas: - ExceptionTypeAndMessage: - $ref: "./ExceptionTypeAndMessage.yaml" Output: description: job execution output example: @@ -25679,10 +25563,6 @@ components: required: - status type: object - components: - schemas: - JobRuntimeError: - $ref: "./JobRuntimeError.yaml" DetachedCollection: example: cursor: cursor @@ -25705,10 +25585,6 @@ components: required: - data type: object - components: - schemas: - DetachedObject: - $ref: "./DetachedObject.yaml" DetachedObject: example: createdAt: 2000-01-23T04:56:07+00:00 @@ -25893,7 +25769,7 @@ components: type: string result: items: - $ref: "XrefSetSearchResultEntry.yaml" + $ref: "#/components/schemas/XrefSetSearchResultEntry" type: array type: object XrefSetSearchResultEntry: @@ -26016,10 +25892,6 @@ components: required: - displayName type: object - components: - schemas: - Member: - $ref: "./Member.yaml" Member: example: display: display @@ -26065,10 +25937,6 @@ components: - Operations - schemas type: object - components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" PatchOperation: example: op: add @@ -26113,10 +25981,6 @@ components: format: int64 type: integer type: object - components: - schemas: - GroupResponse: - $ref: "./GroupResponse.yaml" GroupResponse: allOf: - $ref: "#/components/schemas/Group" @@ -26124,12 +25988,6 @@ components: meta: $ref: "#/components/schemas/Meta" type: object - components: - schemas: - Group: - $ref: "./Group.yaml" - Meta: - $ref: "./Meta.yaml" Meta: description: resource metadata properties: @@ -26176,7 +26034,6 @@ components: required: - status type: object - BaseErrorResponse: properties: error: @@ -26184,11 +26041,6 @@ components: required: - error type: object - components: - schemas: - ErrorMessage: - $ref: "./ErrorMessage.yaml" - ErrorMessage: properties: message: @@ -26197,7 +26049,6 @@ components: required: - message type: object - User: example: emails: @@ -26244,11 +26095,6 @@ components: - displayName - emails type: object - components: - schemas: - Email: - $ref: "./Email.yaml" - Email: example: type: work @@ -26264,7 +26110,6 @@ components: primary: type: boolean type: object - UserPatch: example: schemas: @@ -26293,11 +26138,6 @@ components: - Operations - schemas type: object - components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" - FilterUsersResponse: properties: Resources: @@ -26321,11 +26161,6 @@ components: format: int64 type: integer type: object - components: - schemas: - UserResponse: - $ref: "./UserResponse.yaml" - UserResponse: allOf: - $ref: "#/components/schemas/User" @@ -26333,13 +26168,6 @@ components: meta: $ref: "#/components/schemas/Meta" type: object - components: - schemas: - User: - $ref: "./User.yaml" - Meta: - $ref: "./Meta.yaml" - VariantMetadataWithId: example: itemId: itemId @@ -26509,10 +26337,54 @@ components: cursor: type: string type: object - components: - schemas: - VariantItem: - $ref: "VariantItem.yaml" + CellGroupRequest: + type: object + properties: + studyFilter: + type: string + example: '"Study Source"=ArrayExpress' + studyQuery: + type: string + example: 'RNA-Seq of human dendritic cells' + sampleFilter: + type: string + example: '"Species or strain"="Homo sapiens"' + sampleQuery: + type: string + example: 'Clozapine' + libraryFilter: + type: string + example: '"Library Type"=RNA-Seq-1' + libraryQuery: + type: string + example: 'illumina HiSeq500' + preparationFilter: + type: string + example: 'Digestion=Trypsin' + preparationQuery: + type: string + example: 'reversed-phase liquid chromatography' + cellQuery: + type: string + example: 'cellType=Macrophage,Monocyte' + searchSpecificTerms: + type: boolean + example: false + TransformationParametersForMultipartRequest: + properties: + sourceAttachmentAccession: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + transformationName: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + transformationVersion: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + type: object securitySchemes: Access-token: in: "header" diff --git a/openapi/v1/schemas/cell/CellGroupRequest.yaml b/openapi/v1/schemas/cell/CellGroupRequest.yaml index 81b6128e..e69de29b 100644 --- a/openapi/v1/schemas/cell/CellGroupRequest.yaml +++ b/openapi/v1/schemas/cell/CellGroupRequest.yaml @@ -1,32 +0,0 @@ -type: object -properties: - studyFilter: - type: string - example: '"Study Source"=ArrayExpress' - studyQuery: - type: string - example: 'RNA-Seq of human dendritic cells' - sampleFilter: - type: string - example: '"Species or strain"="Homo sapiens"' - sampleQuery: - type: string - example: 'Clozapine' - libraryFilter: - type: string - example: '"Library Type"=RNA-Seq-1' - libraryQuery: - type: string - example: 'illumina HiSeq500' - preparationFilter: - type: string - example: 'Digestion=Trypsin' - preparationQuery: - type: string - example: 'reversed-phase liquid chromatography' - cellQuery: - type: string - example: 'cellType=Macrophage,Monocyte' - searchSpecificTerms: - type: boolean - example: false diff --git a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml index 9ae8073f..e69de29b 100644 --- a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml +++ b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml @@ -1,14 +0,0 @@ -properties: - sourceAttachmentAccession: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true - transformationName: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true - transformationVersion: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true -type: object From e7acdd863c59e97f04815b4ea7409b51db236caa Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:33:24 +0100 Subject: [PATCH 06/29] [ODM-13126] Remove schemas directory with empty files --- Earthfile | 1 - openapi/v1/schemas/afile/AFile.yaml | 0 openapi/v1/schemas/cell/CRRequest.yaml | 0 openapi/v1/schemas/cell/CRResponse.yaml | 0 openapi/v1/schemas/cell/Cell.yaml | 0 openapi/v1/schemas/cell/CellGroupRequest.yaml | 0 openapi/v1/schemas/cell/CellListResponse.yaml | 0 openapi/v1/schemas/cell/DERequest.yaml | 0 openapi/v1/schemas/cell/DEResponse.yaml | 0 openapi/v1/schemas/cell/GSRequest.yaml | 0 openapi/v1/schemas/cell/GSResponse.yaml | 0 openapi/v1/schemas/common/AccessionResponse.yaml | 0 openapi/v1/schemas/common/CommitInfo.yaml | 0 openapi/v1/schemas/common/IntegrationHelper.yaml | 0 openapi/v1/schemas/common/ListResponse.yaml | 0 openapi/v1/schemas/common/MetaResponse.yaml | 0 openapi/v1/schemas/common/MetadataContent.yaml | 0 openapi/v1/schemas/common/MetadataWithId.yaml | 0 openapi/v1/schemas/common/PaginationInfo.yaml | 0 openapi/v1/schemas/common/ResponseFormat.yaml | 0 openapi/v1/schemas/common/RunFilter.yaml | 0 openapi/v1/schemas/common/RunsResponse.yaml | 0 openapi/v1/schemas/common/SignalRun.yaml | 0 openapi/v1/schemas/expression/ExpressionItem.yaml | 0 openapi/v1/schemas/expression/ExpressionResponse.yaml | 0 openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml | 0 openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml | 0 openapi/v1/schemas/integration/AppliedFilter.yaml | 0 openapi/v1/schemas/integration/AttributeInvalidValue.yaml | 0 openapi/v1/schemas/integration/AttributeValidationSummary.yaml | 0 openapi/v1/schemas/integration/BatchOfIds.yaml | 0 openapi/v1/schemas/integration/DataItem.yaml | 0 openapi/v1/schemas/integration/DataPresentation.yaml | 0 openapi/v1/schemas/integration/FilterOption.yaml | 0 openapi/v1/schemas/integration/FilterOptionGroup.yaml | 0 openapi/v1/schemas/integration/FindObjectsResponse.yaml | 0 openapi/v1/schemas/integration/GroupValidationSummary.yaml | 0 openapi/v1/schemas/integration/IMetadata.yaml | 0 openapi/v1/schemas/integration/Link.yaml | 0 openapi/v1/schemas/integration/MetadataPresentation.yaml | 0 openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml | 0 openapi/v1/schemas/integration/ObjectsPage.yaml | 0 openapi/v1/schemas/integration/OmicsResponse.yaml | 0 .../v1/schemas/integration/OmicsResponseDataPresentation.yaml | 0 .../schemas/integration/OmicsResponseMetadataPresentation.yaml | 0 openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml | 0 openapi/v1/schemas/integration/PageRequest.yaml | 0 openapi/v1/schemas/integration/Relationships.yaml | 0 openapi/v1/schemas/integration/SearchStudyRequest.yaml | 0 openapi/v1/schemas/integration/SourceTypePair.yaml | 0 openapi/v1/schemas/integration/StreamingOutput.yaml | 0 openapi/v1/schemas/integration/StudySearchInfo.yaml | 0 openapi/v1/schemas/integration/StudyValidationSummary.yaml | 0 openapi/v1/schemas/integration/ValidationError.yaml | 0 openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml | 0 openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportAFileRequest.yaml | 0 openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportCellsRequest.yaml | 0 .../job/ImportExpressionSignalRunFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml | 0 openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportMetadataRequest.yaml | 0 openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportSignalRunRequest.yaml | 0 openapi/v1/schemas/job/Info.yaml | 0 openapi/v1/schemas/job/JobRuntimeError.yaml | 0 openapi/v1/schemas/job/Output.yaml | 0 .../schemas/job/TransformationParametersForMultipartRequest.yaml | 0 openapi/v1/schemas/library/Library.yaml | 0 openapi/v1/schemas/manage-data/DetachedCollection.yaml | 0 openapi/v1/schemas/manage-data/DetachedObject.yaml | 0 openapi/v1/schemas/manage-data/ManagedObject.yaml | 0 openapi/v1/schemas/preparation/Preparation.yaml | 0 openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml | 0 openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml | 0 openapi/v1/schemas/reference-data/XrefSetMetadata.yaml | 0 openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml | 0 openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml | 0 openapi/v1/schemas/reference-genome/RGItem.yaml | 0 openapi/v1/schemas/reference-genome/UploadRGRequest.yaml | 0 openapi/v1/schemas/sample/Sample.yaml | 0 openapi/v1/schemas/scim/BaseErrorResponse.yaml | 0 openapi/v1/schemas/scim/Email.yaml | 0 openapi/v1/schemas/scim/ErrorMessage.yaml | 0 openapi/v1/schemas/scim/FilterGroupsResponse.yaml | 0 openapi/v1/schemas/scim/FilterUsersResponse.yaml | 0 openapi/v1/schemas/scim/Group.yaml | 0 openapi/v1/schemas/scim/GroupPatch.yaml | 0 openapi/v1/schemas/scim/GroupResponse.yaml | 0 openapi/v1/schemas/scim/Member.yaml | 0 openapi/v1/schemas/scim/Meta.yaml | 0 openapi/v1/schemas/scim/PatchOperation.yaml | 0 openapi/v1/schemas/scim/SCIMErrorResponse.yaml | 0 openapi/v1/schemas/scim/User.yaml | 0 openapi/v1/schemas/scim/UserPatch.yaml | 0 openapi/v1/schemas/scim/UserResponse.yaml | 0 openapi/v1/schemas/study/Study.yaml | 0 openapi/v1/schemas/tasks/TaskInfo.yaml | 0 openapi/v1/schemas/variant/VariantItem.yaml | 0 openapi/v1/schemas/variant/VariantMetadataWithId.yaml | 0 openapi/v1/schemas/variant/VariantResponse.yaml | 0 102 files changed, 1 deletion(-) delete mode 100644 openapi/v1/schemas/afile/AFile.yaml delete mode 100644 openapi/v1/schemas/cell/CRRequest.yaml delete mode 100644 openapi/v1/schemas/cell/CRResponse.yaml delete mode 100644 openapi/v1/schemas/cell/Cell.yaml delete mode 100644 openapi/v1/schemas/cell/CellGroupRequest.yaml delete mode 100644 openapi/v1/schemas/cell/CellListResponse.yaml delete mode 100644 openapi/v1/schemas/cell/DERequest.yaml delete mode 100644 openapi/v1/schemas/cell/DEResponse.yaml delete mode 100644 openapi/v1/schemas/cell/GSRequest.yaml delete mode 100644 openapi/v1/schemas/cell/GSResponse.yaml delete mode 100644 openapi/v1/schemas/common/AccessionResponse.yaml delete mode 100644 openapi/v1/schemas/common/CommitInfo.yaml delete mode 100644 openapi/v1/schemas/common/IntegrationHelper.yaml delete mode 100644 openapi/v1/schemas/common/ListResponse.yaml delete mode 100644 openapi/v1/schemas/common/MetaResponse.yaml delete mode 100644 openapi/v1/schemas/common/MetadataContent.yaml delete mode 100644 openapi/v1/schemas/common/MetadataWithId.yaml delete mode 100644 openapi/v1/schemas/common/PaginationInfo.yaml delete mode 100644 openapi/v1/schemas/common/ResponseFormat.yaml delete mode 100644 openapi/v1/schemas/common/RunFilter.yaml delete mode 100644 openapi/v1/schemas/common/RunsResponse.yaml delete mode 100644 openapi/v1/schemas/common/SignalRun.yaml delete mode 100644 openapi/v1/schemas/expression/ExpressionItem.yaml delete mode 100644 openapi/v1/schemas/expression/ExpressionResponse.yaml delete mode 100644 openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml delete mode 100644 openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml delete mode 100644 openapi/v1/schemas/integration/AppliedFilter.yaml delete mode 100644 openapi/v1/schemas/integration/AttributeInvalidValue.yaml delete mode 100644 openapi/v1/schemas/integration/AttributeValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/BatchOfIds.yaml delete mode 100644 openapi/v1/schemas/integration/DataItem.yaml delete mode 100644 openapi/v1/schemas/integration/DataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/FilterOption.yaml delete mode 100644 openapi/v1/schemas/integration/FilterOptionGroup.yaml delete mode 100644 openapi/v1/schemas/integration/FindObjectsResponse.yaml delete mode 100644 openapi/v1/schemas/integration/GroupValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/IMetadata.yaml delete mode 100644 openapi/v1/schemas/integration/Link.yaml delete mode 100644 openapi/v1/schemas/integration/MetadataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml delete mode 100644 openapi/v1/schemas/integration/ObjectsPage.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponse.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml delete mode 100644 openapi/v1/schemas/integration/PageRequest.yaml delete mode 100644 openapi/v1/schemas/integration/Relationships.yaml delete mode 100644 openapi/v1/schemas/integration/SearchStudyRequest.yaml delete mode 100644 openapi/v1/schemas/integration/SourceTypePair.yaml delete mode 100644 openapi/v1/schemas/integration/StreamingOutput.yaml delete mode 100644 openapi/v1/schemas/integration/StudySearchInfo.yaml delete mode 100644 openapi/v1/schemas/integration/StudyValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/ValidationError.yaml delete mode 100644 openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml delete mode 100644 openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportAFileRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportCellsRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportMetadataRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportSignalRunRequest.yaml delete mode 100644 openapi/v1/schemas/job/Info.yaml delete mode 100644 openapi/v1/schemas/job/JobRuntimeError.yaml delete mode 100644 openapi/v1/schemas/job/Output.yaml delete mode 100644 openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/library/Library.yaml delete mode 100644 openapi/v1/schemas/manage-data/DetachedCollection.yaml delete mode 100644 openapi/v1/schemas/manage-data/DetachedObject.yaml delete mode 100644 openapi/v1/schemas/manage-data/ManagedObject.yaml delete mode 100644 openapi/v1/schemas/preparation/Preparation.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetMetadata.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml delete mode 100644 openapi/v1/schemas/reference-genome/RGItem.yaml delete mode 100644 openapi/v1/schemas/reference-genome/UploadRGRequest.yaml delete mode 100644 openapi/v1/schemas/sample/Sample.yaml delete mode 100644 openapi/v1/schemas/scim/BaseErrorResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Email.yaml delete mode 100644 openapi/v1/schemas/scim/ErrorMessage.yaml delete mode 100644 openapi/v1/schemas/scim/FilterGroupsResponse.yaml delete mode 100644 openapi/v1/schemas/scim/FilterUsersResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Group.yaml delete mode 100644 openapi/v1/schemas/scim/GroupPatch.yaml delete mode 100644 openapi/v1/schemas/scim/GroupResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Member.yaml delete mode 100644 openapi/v1/schemas/scim/Meta.yaml delete mode 100644 openapi/v1/schemas/scim/PatchOperation.yaml delete mode 100644 openapi/v1/schemas/scim/SCIMErrorResponse.yaml delete mode 100644 openapi/v1/schemas/scim/User.yaml delete mode 100644 openapi/v1/schemas/scim/UserPatch.yaml delete mode 100644 openapi/v1/schemas/scim/UserResponse.yaml delete mode 100644 openapi/v1/schemas/study/Study.yaml delete mode 100644 openapi/v1/schemas/tasks/TaskInfo.yaml delete mode 100644 openapi/v1/schemas/variant/VariantItem.yaml delete mode 100644 openapi/v1/schemas/variant/VariantMetadataWithId.yaml delete mode 100644 openapi/v1/schemas/variant/VariantResponse.yaml diff --git a/Earthfile b/Earthfile index db7003b0..542d4764 100644 --- a/Earthfile +++ b/Earthfile @@ -169,7 +169,6 @@ swagger: stoplight: FROM nginxinc/nginx-unprivileged:1.29.5-alpine - COPY +build/v1/schemas /usr/share/nginx/html/schemas/ COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / diff --git a/openapi/v1/schemas/afile/AFile.yaml b/openapi/v1/schemas/afile/AFile.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CRRequest.yaml b/openapi/v1/schemas/cell/CRRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CRResponse.yaml b/openapi/v1/schemas/cell/CRResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/Cell.yaml b/openapi/v1/schemas/cell/Cell.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CellGroupRequest.yaml b/openapi/v1/schemas/cell/CellGroupRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CellListResponse.yaml b/openapi/v1/schemas/cell/CellListResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/DERequest.yaml b/openapi/v1/schemas/cell/DERequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/DEResponse.yaml b/openapi/v1/schemas/cell/DEResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/GSRequest.yaml b/openapi/v1/schemas/cell/GSRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/GSResponse.yaml b/openapi/v1/schemas/cell/GSResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/AccessionResponse.yaml b/openapi/v1/schemas/common/AccessionResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/CommitInfo.yaml b/openapi/v1/schemas/common/CommitInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/IntegrationHelper.yaml b/openapi/v1/schemas/common/IntegrationHelper.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/ListResponse.yaml b/openapi/v1/schemas/common/ListResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetaResponse.yaml b/openapi/v1/schemas/common/MetaResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetadataContent.yaml b/openapi/v1/schemas/common/MetadataContent.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetadataWithId.yaml b/openapi/v1/schemas/common/MetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/PaginationInfo.yaml b/openapi/v1/schemas/common/PaginationInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/ResponseFormat.yaml b/openapi/v1/schemas/common/ResponseFormat.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/RunFilter.yaml b/openapi/v1/schemas/common/RunFilter.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/RunsResponse.yaml b/openapi/v1/schemas/common/RunsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/SignalRun.yaml b/openapi/v1/schemas/common/SignalRun.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/expression/ExpressionItem.yaml b/openapi/v1/schemas/expression/ExpressionItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/expression/ExpressionResponse.yaml b/openapi/v1/schemas/expression/ExpressionResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AppliedFilter.yaml b/openapi/v1/schemas/integration/AppliedFilter.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/BatchOfIds.yaml b/openapi/v1/schemas/integration/BatchOfIds.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/DataItem.yaml b/openapi/v1/schemas/integration/DataItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/DataPresentation.yaml b/openapi/v1/schemas/integration/DataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FilterOption.yaml b/openapi/v1/schemas/integration/FilterOption.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FilterOptionGroup.yaml b/openapi/v1/schemas/integration/FilterOptionGroup.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FindObjectsResponse.yaml b/openapi/v1/schemas/integration/FindObjectsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/GroupValidationSummary.yaml b/openapi/v1/schemas/integration/GroupValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/IMetadata.yaml b/openapi/v1/schemas/integration/IMetadata.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/Link.yaml b/openapi/v1/schemas/integration/Link.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/MetadataPresentation.yaml b/openapi/v1/schemas/integration/MetadataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/ObjectsPage.yaml b/openapi/v1/schemas/integration/ObjectsPage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponse.yaml b/openapi/v1/schemas/integration/OmicsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/PageRequest.yaml b/openapi/v1/schemas/integration/PageRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/Relationships.yaml b/openapi/v1/schemas/integration/Relationships.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/SearchStudyRequest.yaml b/openapi/v1/schemas/integration/SearchStudyRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/SourceTypePair.yaml b/openapi/v1/schemas/integration/SourceTypePair.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StreamingOutput.yaml b/openapi/v1/schemas/integration/StreamingOutput.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StudySearchInfo.yaml b/openapi/v1/schemas/integration/StudySearchInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StudyValidationSummary.yaml b/openapi/v1/schemas/integration/StudyValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/ValidationError.yaml b/openapi/v1/schemas/integration/ValidationError.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportAFileRequest.yaml b/openapi/v1/schemas/job/ImportAFileRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportCellsRequest.yaml b/openapi/v1/schemas/job/ImportCellsRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportMetadataRequest.yaml b/openapi/v1/schemas/job/ImportMetadataRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/Info.yaml b/openapi/v1/schemas/job/Info.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/JobRuntimeError.yaml b/openapi/v1/schemas/job/JobRuntimeError.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/Output.yaml b/openapi/v1/schemas/job/Output.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/library/Library.yaml b/openapi/v1/schemas/library/Library.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/DetachedCollection.yaml b/openapi/v1/schemas/manage-data/DetachedCollection.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/DetachedObject.yaml b/openapi/v1/schemas/manage-data/DetachedObject.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/ManagedObject.yaml b/openapi/v1/schemas/manage-data/ManagedObject.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/preparation/Preparation.yaml b/openapi/v1/schemas/preparation/Preparation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-genome/RGItem.yaml b/openapi/v1/schemas/reference-genome/RGItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/sample/Sample.yaml b/openapi/v1/schemas/sample/Sample.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/BaseErrorResponse.yaml b/openapi/v1/schemas/scim/BaseErrorResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Email.yaml b/openapi/v1/schemas/scim/Email.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/ErrorMessage.yaml b/openapi/v1/schemas/scim/ErrorMessage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/FilterUsersResponse.yaml b/openapi/v1/schemas/scim/FilterUsersResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Group.yaml b/openapi/v1/schemas/scim/Group.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/GroupPatch.yaml b/openapi/v1/schemas/scim/GroupPatch.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/GroupResponse.yaml b/openapi/v1/schemas/scim/GroupResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Member.yaml b/openapi/v1/schemas/scim/Member.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Meta.yaml b/openapi/v1/schemas/scim/Meta.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/PatchOperation.yaml b/openapi/v1/schemas/scim/PatchOperation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/User.yaml b/openapi/v1/schemas/scim/User.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/UserPatch.yaml b/openapi/v1/schemas/scim/UserPatch.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/UserResponse.yaml b/openapi/v1/schemas/scim/UserResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/study/Study.yaml b/openapi/v1/schemas/study/Study.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/tasks/TaskInfo.yaml b/openapi/v1/schemas/tasks/TaskInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantItem.yaml b/openapi/v1/schemas/variant/VariantItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantResponse.yaml b/openapi/v1/schemas/variant/VariantResponse.yaml deleted file mode 100644 index e69de29b..00000000 From a569cdd6a71d88dc7b0307d0e178c0f62f5b9ee4 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:43:27 +0100 Subject: [PATCH 07/29] [ODM-13126] Downgrade version of spec --- openapi/v1/odm.yaml | 47 +++++++++++++++++++-------------------------- 1 file changed, 20 insertions(+), 27 deletions(-) diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 8385d682..35381cef 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -1,5 +1,4 @@ ---- -openapi: "3.1.0" +openapi: "3.0.3" info: description: "This swagger page describes the variantUser API endpoints for ODM.\ \ These are typically used to find and retrieve variant data and metadata.\n\n\ @@ -24013,12 +24012,11 @@ components: example: value: 1.82 type: object - patternProperties: - "^.*$": - format: double - oneOf: - - type: number - - type: string # Inf or -Inf + additionalProperties: + format: double + oneOf: + - type: number + - type: string # Inf or -Inf description: type: string readOnly: true @@ -25656,9 +25654,8 @@ components: example: '"http://example-url.com/my-mapping.tsv"' type: string metadata: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string description: Additional user metadata type: object required: @@ -25703,9 +25700,8 @@ components: - gene-transcript type: string metadata: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string description: Additional user metadata type: object warnings: @@ -25747,9 +25743,8 @@ components: format: int64 type: integer data: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string type: object type: object XrefSetSearchResult: @@ -26255,18 +26250,16 @@ components: type: string info: type: object - patternProperties: - "^.*$": - type: array - items: - oneOf: - - type: string - - type: number + additionalProperties: + type: array + items: + oneOf: + - type: string + - type: number genotype: type: object - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string type: object VariantResponse: From 6c454a366f495397cc85b8f0be442db2d9eee594 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Thu, 5 Mar 2026 12:36:00 +0100 Subject: [PATCH 08/29] [ODM-13126] Simple mcp server --- mcp-server/.gitignore | 2 + mcp-server/.python-version | 1 + mcp-server/README.md | 0 mcp-server/__pycache__/main.cpython-314.pyc | Bin 0 -> 1145 bytes mcp-server/main.py | 32 + mcp-server/pyproject.toml | 10 + mcp-server/uv.lock | 1131 +++++++++++++++++++ 7 files changed, 1176 insertions(+) create mode 100644 mcp-server/.gitignore create mode 100644 mcp-server/.python-version create mode 100644 mcp-server/README.md create mode 100644 mcp-server/__pycache__/main.cpython-314.pyc create mode 100644 mcp-server/main.py create mode 100644 mcp-server/pyproject.toml create mode 100644 mcp-server/uv.lock diff --git a/mcp-server/.gitignore b/mcp-server/.gitignore new file mode 100644 index 00000000..8d193625 --- /dev/null +++ b/mcp-server/.gitignore @@ -0,0 +1,2 @@ +.venv +.env diff --git a/mcp-server/.python-version b/mcp-server/.python-version new file mode 100644 index 00000000..24ee5b1b --- /dev/null +++ b/mcp-server/.python-version @@ -0,0 +1 @@ +3.13 diff --git a/mcp-server/README.md b/mcp-server/README.md new file mode 100644 index 00000000..e69de29b diff --git a/mcp-server/__pycache__/main.cpython-314.pyc b/mcp-server/__pycache__/main.cpython-314.pyc new file mode 100644 index 0000000000000000000000000000000000000000..856a55a0bd4c6f7460c26676a3b82eebbb361cbf GIT binary patch literal 1145 zcmb7C&2Q646o2;kBTk%zY*?UKs+3ZwLREU$N+7YSC|M{GrM0{uAtc9glSyMWu_Jo| zG}5AQ;X@oiTy~G;1l;%=;KC6oQlmkf;KHp4B&0pc_aKmOQ($gZ*y|reJdDxXR|SA6#~Oqmb{f z#giw{D7Zo){gL}D6$C074yiM(o^e8QzGzT&`S`*u@;(@Rv>XGF(0mbmEwR)#oiS+@I8uFF$r{zGvb=tz_v}b zt1hYA{cIYqz~(8a#EYV0txmPjsbRa}JJle;BlTL~H|=4~6tRq)jK?!F6tul3@R|7m z{fR--VZX~6-o(+?I*t9-^sDU#o(uRp;IBS>!M1HA2*O*?-od{2pudI0JNRW=fp~gL z%e~fey=3~{VpsX3 zLo#!J-`%Axed3iqv0-iMzjn2roVr!MQNCZ?nCzCfHT;*GjIJ8SN!9J#FNRDyd=@ZR;TEw>xjpNKaC4E!=3.1.0", + "httpx>=0.28.1", +] diff --git a/mcp-server/uv.lock b/mcp-server/uv.lock new file mode 100644 index 00000000..8da13d70 --- /dev/null +++ b/mcp-server/uv.lock @@ -0,0 +1,1131 @@ +version = 1 +revision = 3 +requires-python = ">=3.13" + +[[package]] +name = "aiofile" +version = "3.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "caio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/67/e2/d7cb819de8df6b5c1968a2756c3cb4122d4fa2b8fc768b53b7c9e5edb646/aiofile-3.9.0.tar.gz", hash = "sha256:e5ad718bb148b265b6df1b3752c4d1d83024b93da9bd599df74b9d9ffcf7919b", size = 17943, upload-time = "2024-10-08T10:39:35.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/50/25/da1f0b4dd970e52bf5a36c204c107e11a0c6d3ed195eba0bfbc664c312b2/aiofile-3.9.0-py3-none-any.whl", hash = "sha256:ce2f6c1571538cbdfa0143b04e16b208ecb0e9cb4148e528af8a640ed51cc8aa", size = 19539, upload-time = "2024-10-08T10:39:32.955Z" }, +] + +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, +] + +[[package]] +name = "anyio" +version = "4.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/96/f0/5eb65b2bb0d09ac6776f2eb54adee6abe8228ea05b20a5ad0e4945de8aac/anyio-4.12.1.tar.gz", hash = "sha256:41cfcc3a4c85d3f05c932da7c26d0201ac36f72abd4435ba90d0464a3ffed703", size = 228685, upload-time = "2026-01-06T11:45:21.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/0e/27be9fdef66e72d64c0cdc3cc2823101b80585f8119b5c112c2e8f5f7dab/anyio-4.12.1-py3-none-any.whl", hash = "sha256:d405828884fc140aa80a3c667b8beed277f1dfedec42ba031bd6ac3db606ab6c", size = 113592, upload-time = "2026-01-06T11:45:19.497Z" }, +] + +[[package]] +name = "attrs" +version = "25.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6b/5c/685e6633917e101e5dcb62b9dd76946cbb57c26e133bae9e0cd36033c0a9/attrs-25.4.0.tar.gz", hash = "sha256:16d5969b87f0859ef33a48b35d55ac1be6e42ae49d5e853b597db70c35c57e11", size = 934251, upload-time = "2025-10-06T13:54:44.725Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl", hash = "sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373", size = 67615, upload-time = "2025-10-06T13:54:43.17Z" }, +] + +[[package]] +name = "authlib" +version = "1.6.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/af/98/00d3dd826d46959ad8e32af2dbb2398868fd9fd0683c26e56d0789bd0e68/authlib-1.6.9.tar.gz", hash = "sha256:d8f2421e7e5980cc1ddb4e32d3f5fa659cfaf60d8eaf3281ebed192e4ab74f04", size = 165134, upload-time = "2026-03-02T07:44:01.998Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/53/23/b65f568ed0c22f1efacb744d2db1a33c8068f384b8c9b482b52ebdbc3ef6/authlib-1.6.9-py2.py3-none-any.whl", hash = "sha256:f08b4c14e08f0861dc18a32357b33fbcfd2ea86cfe3fe149484b4d764c4a0ac3", size = 244197, upload-time = "2026-03-02T07:44:00.307Z" }, +] + +[[package]] +name = "beartype" +version = "0.22.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz", hash = "sha256:8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f", size = 1608866, upload-time = "2025-12-13T06:50:30.72Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/cc/18245721fa7747065ab478316c7fea7c74777d07f37ae60db2e84f8172e8/beartype-0.22.9-py3-none-any.whl", hash = "sha256:d16c9bbc61ea14637596c5f6fbff2ee99cbe3573e46a716401734ef50c3060c2", size = 1333658, upload-time = "2025-12-13T06:50:28.266Z" }, +] + +[[package]] +name = "cachetools" +version = "7.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6c/c7/342b33cc6877eebc6c9bb45cb9f78e170e575839699f6f3cc96050176431/cachetools-7.0.2.tar.gz", hash = "sha256:7e7f09a4ca8b791d8bb4864afc71e9c17e607a28e6839ca1a644253c97dbeae0", size = 36983, upload-time = "2026-03-02T19:45:16.926Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/04/4b6968e77c110f12da96fdbfcb39c6557c2e5e81bd7afcf8ed893d5bc588/cachetools-7.0.2-py3-none-any.whl", hash = "sha256:938dcad184827c5e94928c4fd5526e2b46692b7fb1ae94472da9131d0299343c", size = 13793, upload-time = "2026-03-02T19:45:15.495Z" }, +] + +[[package]] +name = "caio" +version = "0.9.25" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/92/88/b8527e1b00c1811db339a1df8bd1ae49d146fcea9d6a5c40e3a80aaeb38d/caio-0.9.25.tar.gz", hash = "sha256:16498e7f81d1d0f5a4c0ad3f2540e65fe25691376e0a5bd367f558067113ed10", size = 26781, upload-time = "2025-12-26T15:21:36.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/57/5e6ff127e6f62c9f15d989560435c642144aa4210882f9494204bc892305/caio-0.9.25-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d6c2a3411af97762a2b03840c3cec2f7f728921ff8adda53d7ea2315a8563451", size = 36979, upload-time = "2025-12-26T15:21:35.484Z" }, + { url = "https://files.pythonhosted.org/packages/a3/9f/f21af50e72117eb528c422d4276cbac11fb941b1b812b182e0a9c70d19c5/caio-0.9.25-cp313-cp313-manylinux2010_x86_64.manylinux2014_x86_64.manylinux_2_12_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0998210a4d5cd5cb565b32ccfe4e53d67303f868a76f212e002a8554692870e6", size = 81900, upload-time = "2025-12-26T15:22:21.919Z" }, + { url = "https://files.pythonhosted.org/packages/9c/12/c39ae2a4037cb10ad5eb3578eb4d5f8c1a2575c62bba675f3406b7ef0824/caio-0.9.25-cp313-cp313-manylinux_2_34_aarch64.whl", hash = "sha256:1a177d4777141b96f175fe2c37a3d96dec7911ed9ad5f02bac38aaa1c936611f", size = 81523, upload-time = "2026-03-04T22:08:25.187Z" }, + { url = "https://files.pythonhosted.org/packages/22/59/f8f2e950eb4f1a5a3883e198dca514b9d475415cb6cd7b78b9213a0dd45a/caio-0.9.25-cp313-cp313-manylinux_2_34_x86_64.whl", hash = "sha256:9ed3cfb28c0e99fec5e208c934e5c157d0866aa9c32aa4dc5e9b6034af6286b7", size = 80243, upload-time = "2026-03-04T22:08:26.449Z" }, + { url = "https://files.pythonhosted.org/packages/69/ca/a08fdc7efdcc24e6a6131a93c85be1f204d41c58f474c42b0670af8c016b/caio-0.9.25-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:fab6078b9348e883c80a5e14b382e6ad6aabbc4429ca034e76e730cf464269db", size = 36978, upload-time = "2025-12-26T15:21:41.055Z" }, + { url = "https://files.pythonhosted.org/packages/5e/6c/d4d24f65e690213c097174d26eda6831f45f4734d9d036d81790a27e7b78/caio-0.9.25-cp314-cp314-manylinux2010_x86_64.manylinux2014_x86_64.manylinux_2_12_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:44a6b58e52d488c75cfaa5ecaa404b2b41cc965e6c417e03251e868ecd5b6d77", size = 81832, upload-time = "2025-12-26T15:22:22.757Z" }, + { url = "https://files.pythonhosted.org/packages/87/a4/e534cf7d2d0e8d880e25dd61e8d921ffcfe15bd696734589826f5a2df727/caio-0.9.25-cp314-cp314-manylinux_2_34_aarch64.whl", hash = "sha256:628a630eb7fb22381dd8e3c8ab7f59e854b9c806639811fc3f4310c6bd711d79", size = 81565, upload-time = "2026-03-04T22:08:27.483Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ed/bf81aeac1d290017e5e5ac3e880fd56ee15e50a6d0353986799d1bc5cfd5/caio-0.9.25-cp314-cp314-manylinux_2_34_x86_64.whl", hash = "sha256:0ba16aa605ccb174665357fc729cf500679c2d94d5f1458a6f0d5ca48f2060a7", size = 80071, upload-time = "2026-03-04T22:08:28.751Z" }, + { url = "https://files.pythonhosted.org/packages/86/93/1f76c8d1bafe3b0614e06b2195784a3765bbf7b0a067661af9e2dd47fc33/caio-0.9.25-py3-none-any.whl", hash = "sha256:06c0bb02d6b929119b1cfbe1ca403c768b2013a369e2db46bfa2a5761cf82e40", size = 19087, upload-time = "2025-12-26T15:22:00.221Z" }, +] + +[[package]] +name = "certifi" +version = "2026.2.25" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/af/2d/7bf41579a8986e348fa033a31cdd0e4121114f6bce2457e8876010b092dd/certifi-2026.2.25.tar.gz", hash = "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7", size = 155029, upload-time = "2026-02-25T02:54:17.342Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl", hash = "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa", size = 153684, upload-time = "2026-02-25T02:54:15.766Z" }, +] + +[[package]] +name = "cffi" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser", marker = "implementation_name != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588, upload-time = "2025-09-08T23:24:04.541Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230, upload-time = "2025-09-08T23:23:00.879Z" }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043, upload-time = "2025-09-08T23:23:02.231Z" }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446, upload-time = "2025-09-08T23:23:03.472Z" }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101, upload-time = "2025-09-08T23:23:04.792Z" }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948, upload-time = "2025-09-08T23:23:06.127Z" }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422, upload-time = "2025-09-08T23:23:07.753Z" }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499, upload-time = "2025-09-08T23:23:09.648Z" }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928, upload-time = "2025-09-08T23:23:10.928Z" }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302, upload-time = "2025-09-08T23:23:12.42Z" }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909, upload-time = "2025-09-08T23:23:14.32Z" }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402, upload-time = "2025-09-08T23:23:15.535Z" }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780, upload-time = "2025-09-08T23:23:16.761Z" }, + { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320, upload-time = "2025-09-08T23:23:18.087Z" }, + { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487, upload-time = "2025-09-08T23:23:19.622Z" }, + { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" }, + { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" }, + { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" }, + { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" }, + { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" }, + { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328, upload-time = "2025-09-08T23:23:44.61Z" }, + { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650, upload-time = "2025-09-08T23:23:45.848Z" }, + { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687, upload-time = "2025-09-08T23:23:47.105Z" }, + { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773, upload-time = "2025-09-08T23:23:29.347Z" }, + { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013, upload-time = "2025-09-08T23:23:30.63Z" }, + { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" }, + { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" }, + { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" }, + { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" }, + { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" }, + { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" }, + { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487, upload-time = "2025-09-08T23:23:40.423Z" }, + { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726, upload-time = "2025-09-08T23:23:41.742Z" }, + { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195, upload-time = "2025-09-08T23:23:43.004Z" }, +] + +[[package]] +name = "click" +version = "8.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3d/fa/656b739db8587d7b5dfa22e22ed02566950fbfbcdc20311993483657a5c0/click-8.3.1.tar.gz", hash = "sha256:12ff4785d337a1bb490bb7e9c2b1ee5da3112e94a8622f26a6c77f5d2fc6842a", size = 295065, upload-time = "2025-11-15T20:45:42.706Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/98/78/01c019cdb5d6498122777c1a43056ebb3ebfeef2076d9d026bfe15583b2b/click-8.3.1-py3-none-any.whl", hash = "sha256:981153a64e25f12d547d3426c367a4857371575ee7ad18df2a6183ab0545b2a6", size = 108274, upload-time = "2025-11-15T20:45:41.139Z" }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, +] + +[[package]] +name = "cryptography" +version = "46.0.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/60/04/ee2a9e8542e4fa2773b81771ff8349ff19cdd56b7258a0cc442639052edb/cryptography-46.0.5.tar.gz", hash = "sha256:abace499247268e3757271b2f1e244b36b06f8515cf27c4d49468fc9eb16e93d", size = 750064, upload-time = "2026-02-10T19:18:38.255Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f7/81/b0bb27f2ba931a65409c6b8a8b358a7f03c0e46eceacddff55f7c84b1f3b/cryptography-46.0.5-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:351695ada9ea9618b3500b490ad54c739860883df6c1f555e088eaf25b1bbaad", size = 7176289, upload-time = "2026-02-10T19:17:08.274Z" }, + { url = "https://files.pythonhosted.org/packages/ff/9e/6b4397a3e3d15123de3b1806ef342522393d50736c13b20ec4c9ea6693a6/cryptography-46.0.5-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c18ff11e86df2e28854939acde2d003f7984f721eba450b56a200ad90eeb0e6b", size = 4275637, upload-time = "2026-02-10T19:17:10.53Z" }, + { url = "https://files.pythonhosted.org/packages/63/e7/471ab61099a3920b0c77852ea3f0ea611c9702f651600397ac567848b897/cryptography-46.0.5-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4d7e3d356b8cd4ea5aff04f129d5f66ebdc7b6f8eae802b93739ed520c47c79b", size = 4424742, upload-time = "2026-02-10T19:17:12.388Z" }, + { url = "https://files.pythonhosted.org/packages/37/53/a18500f270342d66bf7e4d9f091114e31e5ee9e7375a5aba2e85a91e0044/cryptography-46.0.5-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:50bfb6925eff619c9c023b967d5b77a54e04256c4281b0e21336a130cd7fc263", size = 4277528, upload-time = "2026-02-10T19:17:13.853Z" }, + { url = "https://files.pythonhosted.org/packages/22/29/c2e812ebc38c57b40e7c583895e73c8c5adb4d1e4a0cc4c5a4fdab2b1acc/cryptography-46.0.5-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:803812e111e75d1aa73690d2facc295eaefd4439be1023fefc4995eaea2af90d", size = 4947993, upload-time = "2026-02-10T19:17:15.618Z" }, + { url = "https://files.pythonhosted.org/packages/6b/e7/237155ae19a9023de7e30ec64e5d99a9431a567407ac21170a046d22a5a3/cryptography-46.0.5-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ee190460e2fbe447175cda91b88b84ae8322a104fc27766ad09428754a618ed", size = 4456855, upload-time = "2026-02-10T19:17:17.221Z" }, + { url = "https://files.pythonhosted.org/packages/2d/87/fc628a7ad85b81206738abbd213b07702bcbdada1dd43f72236ef3cffbb5/cryptography-46.0.5-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:f145bba11b878005c496e93e257c1e88f154d278d2638e6450d17e0f31e558d2", size = 3984635, upload-time = "2026-02-10T19:17:18.792Z" }, + { url = "https://files.pythonhosted.org/packages/84/29/65b55622bde135aedf4565dc509d99b560ee4095e56989e815f8fd2aa910/cryptography-46.0.5-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:e9251e3be159d1020c4030bd2e5f84d6a43fe54b6c19c12f51cde9542a2817b2", size = 4277038, upload-time = "2026-02-10T19:17:20.256Z" }, + { url = "https://files.pythonhosted.org/packages/bc/36/45e76c68d7311432741faf1fbf7fac8a196a0a735ca21f504c75d37e2558/cryptography-46.0.5-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:47fb8a66058b80e509c47118ef8a75d14c455e81ac369050f20ba0d23e77fee0", size = 4912181, upload-time = "2026-02-10T19:17:21.825Z" }, + { url = "https://files.pythonhosted.org/packages/6d/1a/c1ba8fead184d6e3d5afcf03d569acac5ad063f3ac9fb7258af158f7e378/cryptography-46.0.5-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:4c3341037c136030cb46e4b1e17b7418ea4cbd9dd207e4a6f3b2b24e0d4ac731", size = 4456482, upload-time = "2026-02-10T19:17:25.133Z" }, + { url = "https://files.pythonhosted.org/packages/f9/e5/3fb22e37f66827ced3b902cf895e6a6bc1d095b5b26be26bd13c441fdf19/cryptography-46.0.5-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:890bcb4abd5a2d3f852196437129eb3667d62630333aacc13dfd470fad3aaa82", size = 4405497, upload-time = "2026-02-10T19:17:26.66Z" }, + { url = "https://files.pythonhosted.org/packages/1a/df/9d58bb32b1121a8a2f27383fabae4d63080c7ca60b9b5c88be742be04ee7/cryptography-46.0.5-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:80a8d7bfdf38f87ca30a5391c0c9ce4ed2926918e017c29ddf643d0ed2778ea1", size = 4667819, upload-time = "2026-02-10T19:17:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/ea/ed/325d2a490c5e94038cdb0117da9397ece1f11201f425c4e9c57fe5b9f08b/cryptography-46.0.5-cp311-abi3-win32.whl", hash = "sha256:60ee7e19e95104d4c03871d7d7dfb3d22ef8a9b9c6778c94e1c8fcc8365afd48", size = 3028230, upload-time = "2026-02-10T19:17:30.518Z" }, + { url = "https://files.pythonhosted.org/packages/e9/5a/ac0f49e48063ab4255d9e3b79f5def51697fce1a95ea1370f03dc9db76f6/cryptography-46.0.5-cp311-abi3-win_amd64.whl", hash = "sha256:38946c54b16c885c72c4f59846be9743d699eee2b69b6988e0a00a01f46a61a4", size = 3480909, upload-time = "2026-02-10T19:17:32.083Z" }, + { url = "https://files.pythonhosted.org/packages/00/13/3d278bfa7a15a96b9dc22db5a12ad1e48a9eb3d40e1827ef66a5df75d0d0/cryptography-46.0.5-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:94a76daa32eb78d61339aff7952ea819b1734b46f73646a07decb40e5b3448e2", size = 7119287, upload-time = "2026-02-10T19:17:33.801Z" }, + { url = "https://files.pythonhosted.org/packages/67/c8/581a6702e14f0898a0848105cbefd20c058099e2c2d22ef4e476dfec75d7/cryptography-46.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5be7bf2fb40769e05739dd0046e7b26f9d4670badc7b032d6ce4db64dddc0678", size = 4265728, upload-time = "2026-02-10T19:17:35.569Z" }, + { url = "https://files.pythonhosted.org/packages/dd/4a/ba1a65ce8fc65435e5a849558379896c957870dd64fecea97b1ad5f46a37/cryptography-46.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fe346b143ff9685e40192a4960938545c699054ba11d4f9029f94751e3f71d87", size = 4408287, upload-time = "2026-02-10T19:17:36.938Z" }, + { url = "https://files.pythonhosted.org/packages/f8/67/8ffdbf7b65ed1ac224d1c2df3943553766914a8ca718747ee3871da6107e/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c69fd885df7d089548a42d5ec05be26050ebcd2283d89b3d30676eb32ff87dee", size = 4270291, upload-time = "2026-02-10T19:17:38.748Z" }, + { url = "https://files.pythonhosted.org/packages/f8/e5/f52377ee93bc2f2bba55a41a886fd208c15276ffbd2569f2ddc89d50e2c5/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:8293f3dea7fc929ef7240796ba231413afa7b68ce38fd21da2995549f5961981", size = 4927539, upload-time = "2026-02-10T19:17:40.241Z" }, + { url = "https://files.pythonhosted.org/packages/3b/02/cfe39181b02419bbbbcf3abdd16c1c5c8541f03ca8bda240debc467d5a12/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:1abfdb89b41c3be0365328a410baa9df3ff8a9110fb75e7b52e66803ddabc9a9", size = 4442199, upload-time = "2026-02-10T19:17:41.789Z" }, + { url = "https://files.pythonhosted.org/packages/c0/96/2fcaeb4873e536cf71421a388a6c11b5bc846e986b2b069c79363dc1648e/cryptography-46.0.5-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:d66e421495fdb797610a08f43b05269e0a5ea7f5e652a89bfd5a7d3c1dee3648", size = 3960131, upload-time = "2026-02-10T19:17:43.379Z" }, + { url = "https://files.pythonhosted.org/packages/d8/d2/b27631f401ddd644e94c5cf33c9a4069f72011821cf3dc7309546b0642a0/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:4e817a8920bfbcff8940ecfd60f23d01836408242b30f1a708d93198393a80b4", size = 4270072, upload-time = "2026-02-10T19:17:45.481Z" }, + { url = "https://files.pythonhosted.org/packages/f4/a7/60d32b0370dae0b4ebe55ffa10e8599a2a59935b5ece1b9f06edb73abdeb/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:68f68d13f2e1cb95163fa3b4db4bf9a159a418f5f6e7242564fc75fcae667fd0", size = 4892170, upload-time = "2026-02-10T19:17:46.997Z" }, + { url = "https://files.pythonhosted.org/packages/d2/b9/cf73ddf8ef1164330eb0b199a589103c363afa0cf794218c24d524a58eab/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:a3d1fae9863299076f05cb8a778c467578262fae09f9dc0ee9b12eb4268ce663", size = 4441741, upload-time = "2026-02-10T19:17:48.661Z" }, + { url = "https://files.pythonhosted.org/packages/5f/eb/eee00b28c84c726fe8fa0158c65afe312d9c3b78d9d01daf700f1f6e37ff/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4143987a42a2397f2fc3b4d7e3a7d313fbe684f67ff443999e803dd75a76826", size = 4396728, upload-time = "2026-02-10T19:17:50.058Z" }, + { url = "https://files.pythonhosted.org/packages/65/f4/6bc1a9ed5aef7145045114b75b77c2a8261b4d38717bd8dea111a63c3442/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:7d731d4b107030987fd61a7f8ab512b25b53cef8f233a97379ede116f30eb67d", size = 4652001, upload-time = "2026-02-10T19:17:51.54Z" }, + { url = "https://files.pythonhosted.org/packages/86/ef/5d00ef966ddd71ac2e6951d278884a84a40ffbd88948ef0e294b214ae9e4/cryptography-46.0.5-cp314-cp314t-win32.whl", hash = "sha256:c3bcce8521d785d510b2aad26ae2c966092b7daa8f45dd8f44734a104dc0bc1a", size = 3003637, upload-time = "2026-02-10T19:17:52.997Z" }, + { url = "https://files.pythonhosted.org/packages/b7/57/f3f4160123da6d098db78350fdfd9705057aad21de7388eacb2401dceab9/cryptography-46.0.5-cp314-cp314t-win_amd64.whl", hash = "sha256:4d8ae8659ab18c65ced284993c2265910f6c9e650189d4e3f68445ef82a810e4", size = 3469487, upload-time = "2026-02-10T19:17:54.549Z" }, + { url = "https://files.pythonhosted.org/packages/e2/fa/a66aa722105ad6a458bebd64086ca2b72cdd361fed31763d20390f6f1389/cryptography-46.0.5-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:4108d4c09fbbf2789d0c926eb4152ae1760d5a2d97612b92d508d96c861e4d31", size = 7170514, upload-time = "2026-02-10T19:17:56.267Z" }, + { url = "https://files.pythonhosted.org/packages/0f/04/c85bdeab78c8bc77b701bf0d9bdcf514c044e18a46dcff330df5448631b0/cryptography-46.0.5-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7d1f30a86d2757199cb2d56e48cce14deddf1f9c95f1ef1b64ee91ea43fe2e18", size = 4275349, upload-time = "2026-02-10T19:17:58.419Z" }, + { url = "https://files.pythonhosted.org/packages/5c/32/9b87132a2f91ee7f5223b091dc963055503e9b442c98fc0b8a5ca765fab0/cryptography-46.0.5-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:039917b0dc418bb9f6edce8a906572d69e74bd330b0b3fea4f79dab7f8ddd235", size = 4420667, upload-time = "2026-02-10T19:18:00.619Z" }, + { url = "https://files.pythonhosted.org/packages/a1/a6/a7cb7010bec4b7c5692ca6f024150371b295ee1c108bdc1c400e4c44562b/cryptography-46.0.5-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ba2a27ff02f48193fc4daeadf8ad2590516fa3d0adeeb34336b96f7fa64c1e3a", size = 4276980, upload-time = "2026-02-10T19:18:02.379Z" }, + { url = "https://files.pythonhosted.org/packages/8e/7c/c4f45e0eeff9b91e3f12dbd0e165fcf2a38847288fcfd889deea99fb7b6d/cryptography-46.0.5-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:61aa400dce22cb001a98014f647dc21cda08f7915ceb95df0c9eaf84b4b6af76", size = 4939143, upload-time = "2026-02-10T19:18:03.964Z" }, + { url = "https://files.pythonhosted.org/packages/37/19/e1b8f964a834eddb44fa1b9a9976f4e414cbb7aa62809b6760c8803d22d1/cryptography-46.0.5-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ce58ba46e1bc2aac4f7d9290223cead56743fa6ab94a5d53292ffaac6a91614", size = 4453674, upload-time = "2026-02-10T19:18:05.588Z" }, + { url = "https://files.pythonhosted.org/packages/db/ed/db15d3956f65264ca204625597c410d420e26530c4e2943e05a0d2f24d51/cryptography-46.0.5-cp38-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:420d0e909050490d04359e7fdb5ed7e667ca5c3c402b809ae2563d7e66a92229", size = 3978801, upload-time = "2026-02-10T19:18:07.167Z" }, + { url = "https://files.pythonhosted.org/packages/41/e2/df40a31d82df0a70a0daf69791f91dbb70e47644c58581d654879b382d11/cryptography-46.0.5-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:582f5fcd2afa31622f317f80426a027f30dc792e9c80ffee87b993200ea115f1", size = 4276755, upload-time = "2026-02-10T19:18:09.813Z" }, + { url = "https://files.pythonhosted.org/packages/33/45/726809d1176959f4a896b86907b98ff4391a8aa29c0aaaf9450a8a10630e/cryptography-46.0.5-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:bfd56bb4b37ed4f330b82402f6f435845a5f5648edf1ad497da51a8452d5d62d", size = 4901539, upload-time = "2026-02-10T19:18:11.263Z" }, + { url = "https://files.pythonhosted.org/packages/99/0f/a3076874e9c88ecb2ecc31382f6e7c21b428ede6f55aafa1aa272613e3cd/cryptography-46.0.5-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a3d507bb6a513ca96ba84443226af944b0f7f47dcc9a399d110cd6146481d24c", size = 4452794, upload-time = "2026-02-10T19:18:12.914Z" }, + { url = "https://files.pythonhosted.org/packages/02/ef/ffeb542d3683d24194a38f66ca17c0a4b8bf10631feef44a7ef64e631b1a/cryptography-46.0.5-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9f16fbdf4da055efb21c22d81b89f155f02ba420558db21288b3d0035bafd5f4", size = 4404160, upload-time = "2026-02-10T19:18:14.375Z" }, + { url = "https://files.pythonhosted.org/packages/96/93/682d2b43c1d5f1406ed048f377c0fc9fc8f7b0447a478d5c65ab3d3a66eb/cryptography-46.0.5-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ced80795227d70549a411a4ab66e8ce307899fad2220ce5ab2f296e687eacde9", size = 4667123, upload-time = "2026-02-10T19:18:15.886Z" }, + { url = "https://files.pythonhosted.org/packages/45/2d/9c5f2926cb5300a8eefc3f4f0b3f3df39db7f7ce40c8365444c49363cbda/cryptography-46.0.5-cp38-abi3-win32.whl", hash = "sha256:02f547fce831f5096c9a567fd41bc12ca8f11df260959ecc7c3202555cc47a72", size = 3010220, upload-time = "2026-02-10T19:18:17.361Z" }, + { url = "https://files.pythonhosted.org/packages/48/ef/0c2f4a8e31018a986949d34a01115dd057bf536905dca38897bacd21fac3/cryptography-46.0.5-cp38-abi3-win_amd64.whl", hash = "sha256:556e106ee01aa13484ce9b0239bca667be5004efb0aabbed28d353df86445595", size = 3467050, upload-time = "2026-02-10T19:18:18.899Z" }, +] + +[[package]] +name = "cyclopts" +version = "4.7.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "docstring-parser" }, + { name = "rich" }, + { name = "rich-rst" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/a7/61825c9c46dd9d3d2a231c9792753fc3fe2822a90734a619b1a23ed0f05f/cyclopts-4.7.0.tar.gz", hash = "sha256:1d0fd440b8d21a55d14f830033eb1ac156933424df3e90afeea34cfb3ed73822", size = 163447, upload-time = "2026-03-05T02:57:49.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5b/08/a631a99df0e9f49c73ec682a9d1e05e5887cf79f04076792aacb4caac6b2/cyclopts-4.7.0-py3-none-any.whl", hash = "sha256:c659d930797a8470f2914a8f8f8be263b339cb6ffb6593b4a59fa9d84b8e0e38", size = 201270, upload-time = "2026-03-05T02:57:50.988Z" }, +] + +[[package]] +name = "dnspython" +version = "2.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8c/8b/57666417c0f90f08bcafa776861060426765fdb422eb10212086fb811d26/dnspython-2.8.0.tar.gz", hash = "sha256:181d3c6996452cb1189c4046c61599b84a5a86e099562ffde77d26984ff26d0f", size = 368251, upload-time = "2025-09-07T18:58:00.022Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ba/5a/18ad964b0086c6e62e2e7500f7edc89e3faa45033c71c1893d34eed2b2de/dnspython-2.8.0-py3-none-any.whl", hash = "sha256:01d9bbc4a2d76bf0db7c1f729812ded6d912bd318d3b1cf81d30c0f845dbf3af", size = 331094, upload-time = "2025-09-07T18:57:58.071Z" }, +] + +[[package]] +name = "docstring-parser" +version = "0.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b2/9d/c3b43da9515bd270df0f80548d9944e389870713cc1fe2b8fb35fe2bcefd/docstring_parser-0.17.0.tar.gz", hash = "sha256:583de4a309722b3315439bb31d64ba3eebada841f2e2cee23b99df001434c912", size = 27442, upload-time = "2025-07-21T07:35:01.868Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl", hash = "sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708", size = 36896, upload-time = "2025-07-21T07:35:00.684Z" }, +] + +[[package]] +name = "docutils" +version = "0.22.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ae/b6/03bb70946330e88ffec97aefd3ea75ba575cb2e762061e0e62a213befee8/docutils-0.22.4.tar.gz", hash = "sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968", size = 2291750, upload-time = "2025-12-18T19:00:26.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl", hash = "sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de", size = 633196, upload-time = "2025-12-18T19:00:18.077Z" }, +] + +[[package]] +name = "email-validator" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "dnspython" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f5/22/900cb125c76b7aaa450ce02fd727f452243f2e91a61af068b40adba60ea9/email_validator-2.3.0.tar.gz", hash = "sha256:9fc05c37f2f6cf439ff414f8fc46d917929974a82244c20eb10231ba60c54426", size = 51238, upload-time = "2025-08-26T13:09:06.831Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/de/15/545e2b6cf2e3be84bc1ed85613edd75b8aea69807a71c26f4ca6a9258e82/email_validator-2.3.0-py3-none-any.whl", hash = "sha256:80f13f623413e6b197ae73bb10bf4eb0908faf509ad8362c5edeb0be7fd450b4", size = 35604, upload-time = "2025-08-26T13:09:05.858Z" }, +] + +[[package]] +name = "exceptiongroup" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", size = 30371, upload-time = "2025-11-21T23:01:54.787Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/0e/97c33bf5009bdbac74fd2beace167cab3f978feb69cc36f1ef79360d6c4e/exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598", size = 16740, upload-time = "2025-11-21T23:01:53.443Z" }, +] + +[[package]] +name = "fastmcp" +version = "3.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "authlib" }, + { name = "cyclopts" }, + { name = "exceptiongroup" }, + { name = "httpx" }, + { name = "jsonref" }, + { name = "jsonschema-path" }, + { name = "mcp" }, + { name = "openapi-pydantic" }, + { name = "opentelemetry-api" }, + { name = "packaging" }, + { name = "platformdirs" }, + { name = "py-key-value-aio", extra = ["filetree", "keyring", "memory"] }, + { name = "pydantic", extra = ["email"] }, + { name = "pyperclip" }, + { name = "python-dotenv" }, + { name = "pyyaml" }, + { name = "rich" }, + { name = "uncalled-for" }, + { name = "uvicorn" }, + { name = "watchfiles" }, + { name = "websockets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/70/862026c4589441f86ad3108f05bfb2f781c6b322ad60a982f40b303b47d7/fastmcp-3.1.0.tar.gz", hash = "sha256:e25264794c734b9977502a51466961eeecff92a0c2f3b49c40c070993628d6d0", size = 17347083, upload-time = "2026-03-03T02:43:11.283Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/17/07/516f5b20d88932e5a466c2216b628e5358a71b3a9f522215607c3281de05/fastmcp-3.1.0-py3-none-any.whl", hash = "sha256:b1f73b56fd3b0cb2bd9e2a144fc650d5cc31587ed129d996db7710e464ae8010", size = 633749, upload-time = "2026-03-03T02:43:09.06Z" }, +] + +[[package]] +name = "h11" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" }, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" }, +] + +[[package]] +name = "httpx-sse" +version = "0.4.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/4c/751061ffa58615a32c31b2d82e8482be8dd4a89154f003147acee90f2be9/httpx_sse-0.4.3.tar.gz", hash = "sha256:9b1ed0127459a66014aec3c56bebd93da3c1bc8bb6618c8082039a44889a755d", size = 15943, upload-time = "2025-10-10T21:48:22.271Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/fd/6668e5aec43ab844de6fc74927e155a3b37bf40d7c3790e49fc0406b6578/httpx_sse-0.4.3-py3-none-any.whl", hash = "sha256:0ac1c9fe3c0afad2e0ebb25a934a59f4c7823b60792691f779fad2c5568830fc", size = 8960, upload-time = "2025-10-10T21:48:21.158Z" }, +] + +[[package]] +name = "idna" +version = "3.11" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6f/6d/0703ccc57f3a7233505399edb88de3cbd678da106337b9fcde432b65ed60/idna-3.11.tar.gz", hash = "sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902", size = 194582, upload-time = "2025-10-12T14:55:20.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl", hash = "sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea", size = 71008, upload-time = "2025-10-12T14:55:18.883Z" }, +] + +[[package]] +name = "importlib-metadata" +version = "8.7.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "zipp" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f3/49/3b30cad09e7771a4982d9975a8cbf64f00d4a1ececb53297f1d9a7be1b10/importlib_metadata-8.7.1.tar.gz", hash = "sha256:49fef1ae6440c182052f407c8d34a68f72efc36db9ca90dc0113398f2fdde8bb", size = 57107, upload-time = "2025-12-21T10:00:19.278Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/5e/f8e9a1d23b9c20a551a8a02ea3637b4642e22c2626e3a13a9a29cdea99eb/importlib_metadata-8.7.1-py3-none-any.whl", hash = "sha256:5a1f80bf1daa489495071efbb095d75a634cf28a8bc299581244063b53176151", size = 27865, upload-time = "2025-12-21T10:00:18.329Z" }, +] + +[[package]] +name = "jaraco-classes" +version = "3.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "more-itertools" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/c0/ed4a27bc5571b99e3cff68f8a9fa5b56ff7df1c2251cc715a652ddd26402/jaraco.classes-3.4.0.tar.gz", hash = "sha256:47a024b51d0239c0dd8c8540c6c7f484be3b8fcf0b2d85c13825780d3b3f3acd", size = 11780, upload-time = "2024-03-31T07:27:36.643Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl", hash = "sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790", size = 6777, upload-time = "2024-03-31T07:27:34.792Z" }, +] + +[[package]] +name = "jaraco-context" +version = "6.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cb/9c/a788f5bb29c61e456b8ee52ce76dbdd32fd72cd73dd67bc95f42c7a8d13c/jaraco_context-6.1.0.tar.gz", hash = "sha256:129a341b0a85a7db7879e22acd66902fda67882db771754574338898b2d5d86f", size = 15850, upload-time = "2026-01-13T02:53:53.847Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl", hash = "sha256:a43b5ed85815223d0d3cfdb6d7ca0d2bc8946f28f30b6f3216bda070f68badda", size = 7065, upload-time = "2026-01-13T02:53:53.031Z" }, +] + +[[package]] +name = "jaraco-functools" +version = "4.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "more-itertools" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/27/056e0638a86749374d6f57d0b0db39f29509cce9313cf91bdc0ac4d91084/jaraco_functools-4.4.0.tar.gz", hash = "sha256:da21933b0417b89515562656547a77b4931f98176eb173644c0d35032a33d6bb", size = 19943, upload-time = "2025-12-21T09:29:43.6Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl", hash = "sha256:9eec1e36f45c818d9bf307c8948eb03b2b56cd44087b3cdc989abca1f20b9176", size = 10481, upload-time = "2025-12-21T09:29:42.27Z" }, +] + +[[package]] +name = "jeepney" +version = "0.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/6f/357efd7602486741aa73ffc0617fb310a29b588ed0fd69c2399acbb85b0c/jeepney-0.9.0.tar.gz", hash = "sha256:cf0e9e845622b81e4a28df94c40345400256ec608d0e55bb8a3feaa9163f5732", size = 106758, upload-time = "2025-02-27T18:51:01.684Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl", hash = "sha256:97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683", size = 49010, upload-time = "2025-02-27T18:51:00.104Z" }, +] + +[[package]] +name = "jsonref" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/0d/c1f3277e90ccdb50d33ed5ba1ec5b3f0a242ed8c1b1a85d3afeb68464dca/jsonref-1.1.0.tar.gz", hash = "sha256:32fe8e1d85af0fdefbebce950af85590b22b60f9e95443176adbde4e1ecea552", size = 8814, upload-time = "2023-01-16T16:10:04.455Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/ec/e1db9922bceb168197a558a2b8c03a7963f1afe93517ddd3cf99f202f996/jsonref-1.1.0-py3-none-any.whl", hash = "sha256:590dc7773df6c21cbf948b5dac07a72a251db28b0238ceecce0a2abfa8ec30a9", size = 9425, upload-time = "2023-01-16T16:10:02.255Z" }, +] + +[[package]] +name = "jsonschema" +version = "4.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/fc/e067678238fa451312d4c62bf6e6cf5ec56375422aee02f9cb5f909b3047/jsonschema-4.26.0.tar.gz", hash = "sha256:0c26707e2efad8aa1bfc5b7ce170f3fccc2e4918ff85989ba9ffa9facb2be326", size = 366583, upload-time = "2026-01-07T13:41:07.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630, upload-time = "2026-01-07T13:41:05.306Z" }, +] + +[[package]] +name = "jsonschema-path" +version = "0.4.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pathable" }, + { name = "pyyaml" }, + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/8a/7e6102f2b8bdc6705a9eb5294f8f6f9ccd3a8420e8e8e19671d1dd773251/jsonschema_path-0.4.5.tar.gz", hash = "sha256:c6cd7d577ae290c7defd4f4029e86fdb248ca1bd41a07557795b3c95e5144918", size = 15113, upload-time = "2026-03-03T09:56:46.87Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/d5/4e96c44f6c1ea3d812cf5391d81a4f5abaa540abf8d04ecd7f66e0ed11df/jsonschema_path-0.4.5-py3-none-any.whl", hash = "sha256:7d77a2c3f3ec569a40efe5c5f942c44c1af2a6f96fe0866794c9ef5b8f87fd65", size = 19368, upload-time = "2026-03-03T09:56:45.39Z" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/74/a633ee74eb36c44aa6d1095e7cc5569bebf04342ee146178e2d36600708b/jsonschema_specifications-2025.9.1.tar.gz", hash = "sha256:b540987f239e745613c7a9176f3edb72b832a4ac465cf02712288397832b5e8d", size = 32855, upload-time = "2025-09-08T01:34:59.186Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl", hash = "sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe", size = 18437, upload-time = "2025-09-08T01:34:57.871Z" }, +] + +[[package]] +name = "keyring" +version = "25.7.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jaraco-classes" }, + { name = "jaraco-context" }, + { name = "jaraco-functools" }, + { name = "jeepney", marker = "sys_platform == 'linux'" }, + { name = "pywin32-ctypes", marker = "sys_platform == 'win32'" }, + { name = "secretstorage", marker = "sys_platform == 'linux'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/43/4b/674af6ef2f97d56f0ab5153bf0bfa28ccb6c3ed4d1babf4305449668807b/keyring-25.7.0.tar.gz", hash = "sha256:fe01bd85eb3f8fb3dd0405defdeac9a5b4f6f0439edbb3149577f244a2e8245b", size = 63516, upload-time = "2025-11-16T16:26:09.482Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl", hash = "sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f", size = 39160, upload-time = "2025-11-16T16:26:08.402Z" }, +] + +[[package]] +name = "markdown-it-py" +version = "4.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/f5/4ec618ed16cc4f8fb3b701563655a69816155e79e24a17b651541804721d/markdown_it_py-4.0.0.tar.gz", hash = "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3", size = 73070, upload-time = "2025-08-11T12:57:52.854Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321, upload-time = "2025-08-11T12:57:51.923Z" }, +] + +[[package]] +name = "mcp" +version = "1.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "httpx" }, + { name = "httpx-sse" }, + { name = "jsonschema" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pyjwt", extra = ["crypto"] }, + { name = "python-multipart" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "sse-starlette" }, + { name = "starlette" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, + { name = "uvicorn", marker = "sys_platform != 'emscripten'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/6d/62e76bbb8144d6ed86e202b5edd8a4cb631e7c8130f3f4893c3f90262b10/mcp-1.26.0.tar.gz", hash = "sha256:db6e2ef491eecc1a0d93711a76f28dec2e05999f93afd48795da1c1137142c66", size = 608005, upload-time = "2026-01-24T19:40:32.468Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/d9/eaa1f80170d2b7c5ba23f3b59f766f3a0bb41155fbc32a69adfa1adaaef9/mcp-1.26.0-py3-none-any.whl", hash = "sha256:904a21c33c25aa98ddbeb47273033c435e595bbacfdb177f4bd87f6dceebe1ca", size = 233615, upload-time = "2026-01-24T19:40:30.652Z" }, +] + +[[package]] +name = "mcp-server" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "fastmcp" }, + { name = "httpx" }, +] + +[package.metadata] +requires-dist = [ + { name = "fastmcp", specifier = ">=3.1.0" }, + { name = "httpx", specifier = ">=0.28.1" }, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729, upload-time = "2022-08-14T12:40:10.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, +] + +[[package]] +name = "more-itertools" +version = "10.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ea/5d/38b681d3fce7a266dd9ab73c66959406d565b3e85f21d5e66e1181d93721/more_itertools-10.8.0.tar.gz", hash = "sha256:f638ddf8a1a0d134181275fb5d58b086ead7c6a72429ad725c67503f13ba30bd", size = 137431, upload-time = "2025-09-02T15:23:11.018Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl", hash = "sha256:52d4362373dcf7c52546bc4af9a86ee7c4579df9a8dc268be0a2f949d376cc9b", size = 69667, upload-time = "2025-09-02T15:23:09.635Z" }, +] + +[[package]] +name = "openapi-pydantic" +version = "0.5.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/02/2e/58d83848dd1a79cb92ed8e63f6ba901ca282c5f09d04af9423ec26c56fd7/openapi_pydantic-0.5.1.tar.gz", hash = "sha256:ff6835af6bde7a459fb93eb93bb92b8749b754fc6e51b2f1590a19dc3005ee0d", size = 60892, upload-time = "2025-01-08T19:29:27.083Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/cf/03675d8bd8ecbf4445504d8071adab19f5f993676795708e36402ab38263/openapi_pydantic-0.5.1-py3-none-any.whl", hash = "sha256:a3a09ef4586f5bd760a8df7f43028b60cafb6d9f61de2acba9574766255ab146", size = 96381, upload-time = "2025-01-08T19:29:25.275Z" }, +] + +[[package]] +name = "opentelemetry-api" +version = "1.40.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "importlib-metadata" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2c/1d/4049a9e8698361cc1a1aa03a6c59e4fa4c71e0c0f94a30f988a6876a2ae6/opentelemetry_api-1.40.0.tar.gz", hash = "sha256:159be641c0b04d11e9ecd576906462773eb97ae1b657730f0ecf64d32071569f", size = 70851, upload-time = "2026-03-04T14:17:21.555Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5f/bf/93795954016c522008da367da292adceed71cca6ee1717e1d64c83089099/opentelemetry_api-1.40.0-py3-none-any.whl", hash = "sha256:82dd69331ae74b06f6a874704be0cfaa49a1650e1537d4a813b86ecef7d0ecf9", size = 68676, upload-time = "2026-03-04T14:17:01.24Z" }, +] + +[[package]] +name = "packaging" +version = "26.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/65/ee/299d360cdc32edc7d2cf530f3accf79c4fca01e96ffc950d8a52213bd8e4/packaging-26.0.tar.gz", hash = "sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4", size = 143416, upload-time = "2026-01-21T20:50:39.064Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366, upload-time = "2026-01-21T20:50:37.788Z" }, +] + +[[package]] +name = "pathable" +version = "0.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/55/b748445cb4ea6b125626f15379be7c96d1035d4fa3e8fee362fa92298abf/pathable-0.5.0.tar.gz", hash = "sha256:d81938348a1cacb525e7c75166270644782c0fb9c8cecc16be033e71427e0ef1", size = 16655, upload-time = "2026-02-20T08:47:00.748Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/52/96/5a770e5c461462575474468e5af931cff9de036e7c2b4fea23c1c58d2cbe/pathable-0.5.0-py3-none-any.whl", hash = "sha256:646e3d09491a6351a0c82632a09c02cdf70a252e73196b36d8a15ba0a114f0a6", size = 16867, upload-time = "2026-02-20T08:46:59.536Z" }, +] + +[[package]] +name = "platformdirs" +version = "4.9.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/04/fea538adf7dbbd6d186f551d595961e564a3b6715bdf276b477460858672/platformdirs-4.9.2.tar.gz", hash = "sha256:9a33809944b9db043ad67ca0db94b14bf452cc6aeaac46a88ea55b26e2e9d291", size = 28394, upload-time = "2026-02-16T03:56:10.574Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl", hash = "sha256:9170634f126f8efdae22fb58ae8a0eaa86f38365bc57897a6c4f781d1f5875bd", size = 21168, upload-time = "2026-02-16T03:56:08.891Z" }, +] + +[[package]] +name = "py-key-value-aio" +version = "0.4.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beartype" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/04/3c/0397c072a38d4bc580994b42e0c90c5f44f679303489e4376289534735e5/py_key_value_aio-0.4.4.tar.gz", hash = "sha256:e3012e6243ed7cc09bb05457bd4d03b1ba5c2b1ca8700096b3927db79ffbbe55", size = 92300, upload-time = "2026-02-16T21:21:43.245Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/69/f1b537ee70b7def42d63124a539ed3026a11a3ffc3086947a1ca6e861868/py_key_value_aio-0.4.4-py3-none-any.whl", hash = "sha256:18e17564ecae61b987f909fc2cd41ee2012c84b4b1dcb8c055cf8b4bc1bf3f5d", size = 152291, upload-time = "2026-02-16T21:21:44.241Z" }, +] + +[package.optional-dependencies] +filetree = [ + { name = "aiofile" }, + { name = "anyio" }, +] +keyring = [ + { name = "keyring" }, +] +memory = [ + { name = "cachetools" }, +] + +[[package]] +name = "pycparser" +version = "3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz", hash = "sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29", size = 103492, upload-time = "2026-01-21T14:26:51.89Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172, upload-time = "2026-01-21T14:26:50.693Z" }, +] + +[[package]] +name = "pydantic" +version = "2.12.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/69/44/36f1a6e523abc58ae5f928898e4aca2e0ea509b5aa6f6f392a5d882be928/pydantic-2.12.5.tar.gz", hash = "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49", size = 821591, upload-time = "2025-11-26T15:11:46.471Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl", hash = "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d", size = 463580, upload-time = "2025-11-26T15:11:44.605Z" }, +] + +[package.optional-dependencies] +email = [ + { name = "email-validator" }, +] + +[[package]] +name = "pydantic-core" +version = "2.41.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e", size = 460952, upload-time = "2025-11-04T13:43:49.098Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/06/8806241ff1f70d9939f9af039c6c35f2360cf16e93c2ca76f184e76b1564/pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9", size = 2120403, upload-time = "2025-11-04T13:40:25.248Z" }, + { url = "https://files.pythonhosted.org/packages/94/02/abfa0e0bda67faa65fef1c84971c7e45928e108fe24333c81f3bfe35d5f5/pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34", size = 1896206, upload-time = "2025-11-04T13:40:27.099Z" }, + { url = "https://files.pythonhosted.org/packages/15/df/a4c740c0943e93e6500f9eb23f4ca7ec9bf71b19e608ae5b579678c8d02f/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0", size = 1919307, upload-time = "2025-11-04T13:40:29.806Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e3/6324802931ae1d123528988e0e86587c2072ac2e5394b4bc2bc34b61ff6e/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33", size = 2063258, upload-time = "2025-11-04T13:40:33.544Z" }, + { url = "https://files.pythonhosted.org/packages/c9/d4/2230d7151d4957dd79c3044ea26346c148c98fbf0ee6ebd41056f2d62ab5/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e", size = 2214917, upload-time = "2025-11-04T13:40:35.479Z" }, + { url = "https://files.pythonhosted.org/packages/e6/9f/eaac5df17a3672fef0081b6c1bb0b82b33ee89aa5cec0d7b05f52fd4a1fa/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2", size = 2332186, upload-time = "2025-11-04T13:40:37.436Z" }, + { url = "https://files.pythonhosted.org/packages/cf/4e/35a80cae583a37cf15604b44240e45c05e04e86f9cfd766623149297e971/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586", size = 2073164, upload-time = "2025-11-04T13:40:40.289Z" }, + { url = "https://files.pythonhosted.org/packages/bf/e3/f6e262673c6140dd3305d144d032f7bd5f7497d3871c1428521f19f9efa2/pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d", size = 2179146, upload-time = "2025-11-04T13:40:42.809Z" }, + { url = "https://files.pythonhosted.org/packages/75/c7/20bd7fc05f0c6ea2056a4565c6f36f8968c0924f19b7d97bbfea55780e73/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740", size = 2137788, upload-time = "2025-11-04T13:40:44.752Z" }, + { url = "https://files.pythonhosted.org/packages/3a/8d/34318ef985c45196e004bc46c6eab2eda437e744c124ef0dbe1ff2c9d06b/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e", size = 2340133, upload-time = "2025-11-04T13:40:46.66Z" }, + { url = "https://files.pythonhosted.org/packages/9c/59/013626bf8c78a5a5d9350d12e7697d3d4de951a75565496abd40ccd46bee/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858", size = 2324852, upload-time = "2025-11-04T13:40:48.575Z" }, + { url = "https://files.pythonhosted.org/packages/1a/d9/c248c103856f807ef70c18a4f986693a46a8ffe1602e5d361485da502d20/pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36", size = 1994679, upload-time = "2025-11-04T13:40:50.619Z" }, + { url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11", size = 2019766, upload-time = "2025-11-04T13:40:52.631Z" }, + { url = "https://files.pythonhosted.org/packages/73/7d/f2f9db34af103bea3e09735bb40b021788a5e834c81eedb541991badf8f5/pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd", size = 1981005, upload-time = "2025-11-04T13:40:54.734Z" }, + { url = "https://files.pythonhosted.org/packages/ea/28/46b7c5c9635ae96ea0fbb779e271a38129df2550f763937659ee6c5dbc65/pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a", size = 2119622, upload-time = "2025-11-04T13:40:56.68Z" }, + { url = "https://files.pythonhosted.org/packages/74/1a/145646e5687e8d9a1e8d09acb278c8535ebe9e972e1f162ed338a622f193/pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14", size = 1891725, upload-time = "2025-11-04T13:40:58.807Z" }, + { url = "https://files.pythonhosted.org/packages/23/04/e89c29e267b8060b40dca97bfc64a19b2a3cf99018167ea1677d96368273/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1", size = 1915040, upload-time = "2025-11-04T13:41:00.853Z" }, + { url = "https://files.pythonhosted.org/packages/84/a3/15a82ac7bd97992a82257f777b3583d3e84bdb06ba6858f745daa2ec8a85/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66", size = 2063691, upload-time = "2025-11-04T13:41:03.504Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/0046701313c6ef08c0c1cf0e028c67c770a4e1275ca73131563c5f2a310a/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869", size = 2213897, upload-time = "2025-11-04T13:41:05.804Z" }, + { url = "https://files.pythonhosted.org/packages/8a/cd/6bac76ecd1b27e75a95ca3a9a559c643b3afcd2dd62086d4b7a32a18b169/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2", size = 2333302, upload-time = "2025-11-04T13:41:07.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/d2/ef2074dc020dd6e109611a8be4449b98cd25e1b9b8a303c2f0fca2f2bcf7/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375", size = 2064877, upload-time = "2025-11-04T13:41:09.827Z" }, + { url = "https://files.pythonhosted.org/packages/18/66/e9db17a9a763d72f03de903883c057b2592c09509ccfe468187f2a2eef29/pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553", size = 2180680, upload-time = "2025-11-04T13:41:12.379Z" }, + { url = "https://files.pythonhosted.org/packages/d3/9e/3ce66cebb929f3ced22be85d4c2399b8e85b622db77dad36b73c5387f8f8/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90", size = 2138960, upload-time = "2025-11-04T13:41:14.627Z" }, + { url = "https://files.pythonhosted.org/packages/a6/62/205a998f4327d2079326b01abee48e502ea739d174f0a89295c481a2272e/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07", size = 2339102, upload-time = "2025-11-04T13:41:16.868Z" }, + { url = "https://files.pythonhosted.org/packages/3c/0d/f05e79471e889d74d3d88f5bd20d0ed189ad94c2423d81ff8d0000aab4ff/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb", size = 2326039, upload-time = "2025-11-04T13:41:18.934Z" }, + { url = "https://files.pythonhosted.org/packages/ec/e1/e08a6208bb100da7e0c4b288eed624a703f4d129bde2da475721a80cab32/pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23", size = 1995126, upload-time = "2025-11-04T13:41:21.418Z" }, + { url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf", size = 2015489, upload-time = "2025-11-04T13:41:24.076Z" }, + { url = "https://files.pythonhosted.org/packages/4e/bb/f7a190991ec9e3e0ba22e4993d8755bbc4a32925c0b5b42775c03e8148f9/pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0", size = 1977288, upload-time = "2025-11-04T13:41:26.33Z" }, + { url = "https://files.pythonhosted.org/packages/92/ed/77542d0c51538e32e15afe7899d79efce4b81eee631d99850edc2f5e9349/pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a", size = 2120255, upload-time = "2025-11-04T13:41:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/bb/3d/6913dde84d5be21e284439676168b28d8bbba5600d838b9dca99de0fad71/pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3", size = 1863760, upload-time = "2025-11-04T13:41:31.055Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f0/e5e6b99d4191da102f2b0eb9687aaa7f5bea5d9964071a84effc3e40f997/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c", size = 1878092, upload-time = "2025-11-04T13:41:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/71/48/36fb760642d568925953bcc8116455513d6e34c4beaa37544118c36aba6d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612", size = 2053385, upload-time = "2025-11-04T13:41:35.508Z" }, + { url = "https://files.pythonhosted.org/packages/20/25/92dc684dd8eb75a234bc1c764b4210cf2646479d54b47bf46061657292a8/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d", size = 2218832, upload-time = "2025-11-04T13:41:37.732Z" }, + { url = "https://files.pythonhosted.org/packages/e2/09/f53e0b05023d3e30357d82eb35835d0f6340ca344720a4599cd663dca599/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9", size = 2327585, upload-time = "2025-11-04T13:41:40Z" }, + { url = "https://files.pythonhosted.org/packages/aa/4e/2ae1aa85d6af35a39b236b1b1641de73f5a6ac4d5a7509f77b814885760c/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660", size = 2041078, upload-time = "2025-11-04T13:41:42.323Z" }, + { url = "https://files.pythonhosted.org/packages/cd/13/2e215f17f0ef326fc72afe94776edb77525142c693767fc347ed6288728d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9", size = 2173914, upload-time = "2025-11-04T13:41:45.221Z" }, + { url = "https://files.pythonhosted.org/packages/02/7a/f999a6dcbcd0e5660bc348a3991c8915ce6599f4f2c6ac22f01d7a10816c/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3", size = 2129560, upload-time = "2025-11-04T13:41:47.474Z" }, + { url = "https://files.pythonhosted.org/packages/3a/b1/6c990ac65e3b4c079a4fb9f5b05f5b013afa0f4ed6780a3dd236d2cbdc64/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf", size = 2329244, upload-time = "2025-11-04T13:41:49.992Z" }, + { url = "https://files.pythonhosted.org/packages/d9/02/3c562f3a51afd4d88fff8dffb1771b30cfdfd79befd9883ee094f5b6c0d8/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470", size = 2331955, upload-time = "2025-11-04T13:41:54.079Z" }, + { url = "https://files.pythonhosted.org/packages/5c/96/5fb7d8c3c17bc8c62fdb031c47d77a1af698f1d7a406b0f79aaa1338f9ad/pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa", size = 1988906, upload-time = "2025-11-04T13:41:56.606Z" }, + { url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c", size = 1981607, upload-time = "2025-11-04T13:41:58.889Z" }, + { url = "https://files.pythonhosted.org/packages/9f/ed/068e41660b832bb0b1aa5b58011dea2a3fe0ba7861ff38c4d4904c1c1a99/pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008", size = 1974769, upload-time = "2025-11-04T13:42:01.186Z" }, +] + +[[package]] +name = "pydantic-settings" +version = "2.13.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/52/6d/fffca34caecc4a3f97bda81b2098da5e8ab7efc9a66e819074a11955d87e/pydantic_settings-2.13.1.tar.gz", hash = "sha256:b4c11847b15237fb0171e1462bf540e294affb9b86db4d9aa5c01730bdbe4025", size = 223826, upload-time = "2026-02-19T13:45:08.055Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/00/4b/ccc026168948fec4f7555b9164c724cf4125eac006e176541483d2c959be/pydantic_settings-2.13.1-py3-none-any.whl", hash = "sha256:d56fd801823dbeae7f0975e1f8c8e25c258eb75d278ea7abb5d9cebb01b56237", size = 58929, upload-time = "2026-02-19T13:45:06.034Z" }, +] + +[[package]] +name = "pygments" +version = "2.19.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" }, +] + +[[package]] +name = "pyjwt" +version = "2.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5c/5a/b46fa56bf322901eee5b0454a34343cdbdae202cd421775a8ee4e42fd519/pyjwt-2.11.0.tar.gz", hash = "sha256:35f95c1f0fbe5d5ba6e43f00271c275f7a1a4db1dab27bf708073b75318ea623", size = 98019, upload-time = "2026-01-30T19:59:55.694Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6f/01/c26ce75ba460d5cd503da9e13b21a33804d38c2165dec7b716d06b13010c/pyjwt-2.11.0-py3-none-any.whl", hash = "sha256:94a6bde30eb5c8e04fee991062b534071fd1439ef58d2adc9ccb823e7bcd0469", size = 28224, upload-time = "2026-01-30T19:59:54.539Z" }, +] + +[package.optional-dependencies] +crypto = [ + { name = "cryptography" }, +] + +[[package]] +name = "pyperclip" +version = "1.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e8/52/d87eba7cb129b81563019d1679026e7a112ef76855d6159d24754dbd2a51/pyperclip-1.11.0.tar.gz", hash = "sha256:244035963e4428530d9e3a6101a1ef97209c6825edab1567beac148ccc1db1b6", size = 12185, upload-time = "2025-09-26T14:40:37.245Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl", hash = "sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273", size = 11063, upload-time = "2025-09-26T14:40:36.069Z" }, +] + +[[package]] +name = "python-dotenv" +version = "1.2.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz", hash = "sha256:2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3", size = 50135, upload-time = "2026-03-01T16:00:26.196Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl", hash = "sha256:1d8214789a24de455a8b8bd8ae6fe3c6b69a5e3d64aa8a8e5d68e694bbcb285a", size = 22101, upload-time = "2026-03-01T16:00:25.09Z" }, +] + +[[package]] +name = "python-multipart" +version = "0.0.22" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/01/979e98d542a70714b0cb2b6728ed0b7c46792b695e3eaec3e20711271ca3/python_multipart-0.0.22.tar.gz", hash = "sha256:7340bef99a7e0032613f56dc36027b959fd3b30a787ed62d310e951f7c3a3a58", size = 37612, upload-time = "2026-01-25T10:15:56.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/d0/397f9626e711ff749a95d96b7af99b9c566a9bb5129b8e4c10fc4d100304/python_multipart-0.0.22-py3-none-any.whl", hash = "sha256:2b2cd894c83d21bf49d702499531c7bafd057d730c201782048f7945d82de155", size = 24579, upload-time = "2026-01-25T10:15:54.811Z" }, +] + +[[package]] +name = "pywin32" +version = "311" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700, upload-time = "2025-07-14T20:13:26.471Z" }, + { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700, upload-time = "2025-07-14T20:13:28.243Z" }, + { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318, upload-time = "2025-07-14T20:13:30.348Z" }, + { url = "https://files.pythonhosted.org/packages/c9/31/097f2e132c4f16d99a22bfb777e0fd88bd8e1c634304e102f313af69ace5/pywin32-311-cp314-cp314-win32.whl", hash = "sha256:b7a2c10b93f8986666d0c803ee19b5990885872a7de910fc460f9b0c2fbf92ee", size = 8840714, upload-time = "2025-07-14T20:13:32.449Z" }, + { url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl", hash = "sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87", size = 9656800, upload-time = "2025-07-14T20:13:34.312Z" }, + { url = "https://files.pythonhosted.org/packages/c0/d2/21af5c535501a7233e734b8af901574572da66fcc254cb35d0609c9080dd/pywin32-311-cp314-cp314-win_arm64.whl", hash = "sha256:a508e2d9025764a8270f93111a970e1d0fbfc33f4153b388bb649b7eec4f9b42", size = 8932540, upload-time = "2025-07-14T20:13:36.379Z" }, +] + +[[package]] +name = "pywin32-ctypes" +version = "0.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/85/9f/01a1a99704853cb63f253eea009390c88e7131c67e66a0a02099a8c917cb/pywin32-ctypes-0.2.3.tar.gz", hash = "sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755", size = 29471, upload-time = "2024-08-14T10:15:34.626Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8", size = 30756, upload-time = "2024-08-14T10:15:33.187Z" }, +] + +[[package]] +name = "pyyaml" +version = "6.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960, upload-time = "2025-09-25T21:33:16.546Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669, upload-time = "2025-09-25T21:32:23.673Z" }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252, upload-time = "2025-09-25T21:32:25.149Z" }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081, upload-time = "2025-09-25T21:32:26.575Z" }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159, upload-time = "2025-09-25T21:32:27.727Z" }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626, upload-time = "2025-09-25T21:32:28.878Z" }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613, upload-time = "2025-09-25T21:32:30.178Z" }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115, upload-time = "2025-09-25T21:32:31.353Z" }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427, upload-time = "2025-09-25T21:32:32.58Z" }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090, upload-time = "2025-09-25T21:32:33.659Z" }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246, upload-time = "2025-09-25T21:32:34.663Z" }, + { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814, upload-time = "2025-09-25T21:32:35.712Z" }, + { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809, upload-time = "2025-09-25T21:32:36.789Z" }, + { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454, upload-time = "2025-09-25T21:32:37.966Z" }, + { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355, upload-time = "2025-09-25T21:32:39.178Z" }, + { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175, upload-time = "2025-09-25T21:32:40.865Z" }, + { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228, upload-time = "2025-09-25T21:32:42.084Z" }, + { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194, upload-time = "2025-09-25T21:32:43.362Z" }, + { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429, upload-time = "2025-09-25T21:32:57.844Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912, upload-time = "2025-09-25T21:32:59.247Z" }, + { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108, upload-time = "2025-09-25T21:32:44.377Z" }, + { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641, upload-time = "2025-09-25T21:32:45.407Z" }, + { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901, upload-time = "2025-09-25T21:32:48.83Z" }, + { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132, upload-time = "2025-09-25T21:32:50.149Z" }, + { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261, upload-time = "2025-09-25T21:32:51.808Z" }, + { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272, upload-time = "2025-09-25T21:32:52.941Z" }, + { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923, upload-time = "2025-09-25T21:32:54.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062, upload-time = "2025-09-25T21:32:55.767Z" }, + { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, +] + +[[package]] +name = "referencing" +version = "0.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036, upload-time = "2025-10-13T15:30:48.871Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl", hash = "sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231", size = 26766, upload-time = "2025-10-13T15:30:47.625Z" }, +] + +[[package]] +name = "rich" +version = "14.3.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/c6/f3b320c27991c46f43ee9d856302c70dc2d0fb2dba4842ff739d5f46b393/rich-14.3.3.tar.gz", hash = "sha256:b8daa0b9e4eef54dd8cf7c86c03713f53241884e814f4e2f5fb342fe520f639b", size = 230582, upload-time = "2026-02-19T17:23:12.474Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/25/b208c5683343959b670dc001595f2f3737e051da617f66c31f7c4fa93abc/rich-14.3.3-py3-none-any.whl", hash = "sha256:793431c1f8619afa7d3b52b2cdec859562b950ea0d4b6b505397612db8d5362d", size = 310458, upload-time = "2026-02-19T17:23:13.732Z" }, +] + +[[package]] +name = "rich-rst" +version = "1.3.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "docutils" }, + { name = "rich" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bc/6d/a506aaa4a9eaa945ed8ab2b7347859f53593864289853c5d6d62b77246e0/rich_rst-1.3.2.tar.gz", hash = "sha256:a1196fdddf1e364b02ec68a05e8ff8f6914fee10fbca2e6b6735f166bb0da8d4", size = 14936, upload-time = "2025-10-14T16:49:45.332Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/2f/b4530fbf948867702d0a3f27de4a6aab1d156f406d72852ab902c4d04de9/rich_rst-1.3.2-py3-none-any.whl", hash = "sha256:a99b4907cbe118cf9d18b0b44de272efa61f15117c61e39ebdc431baf5df722a", size = 12567, upload-time = "2025-10-14T16:49:42.953Z" }, +] + +[[package]] +name = "rpds-py" +version = "0.30.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/af/3f2f423103f1113b36230496629986e0ef7e199d2aa8392452b484b38ced/rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84", size = 69469, upload-time = "2025-11-30T20:24:38.837Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2", size = 374887, upload-time = "2025-11-30T20:22:41.812Z" }, + { url = "https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8", size = 358904, upload-time = "2025-11-30T20:22:43.479Z" }, + { url = "https://files.pythonhosted.org/packages/58/70/faed8186300e3b9bdd138d0273109784eea2396c68458ed580f885dfe7ad/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4", size = 389945, upload-time = "2025-11-30T20:22:44.819Z" }, + { url = "https://files.pythonhosted.org/packages/bd/a8/073cac3ed2c6387df38f71296d002ab43496a96b92c823e76f46b8af0543/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136", size = 407783, upload-time = "2025-11-30T20:22:46.103Z" }, + { url = "https://files.pythonhosted.org/packages/77/57/5999eb8c58671f1c11eba084115e77a8899d6e694d2a18f69f0ba471ec8b/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7", size = 515021, upload-time = "2025-11-30T20:22:47.458Z" }, + { url = "https://files.pythonhosted.org/packages/e0/af/5ab4833eadc36c0a8ed2bc5c0de0493c04f6c06de223170bd0798ff98ced/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2", size = 414589, upload-time = "2025-11-30T20:22:48.872Z" }, + { url = "https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6", size = 394025, upload-time = "2025-11-30T20:22:50.196Z" }, + { url = "https://files.pythonhosted.org/packages/91/c4/fc70cd0249496493500e7cc2de87504f5aa6509de1e88623431fec76d4b6/rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e", size = 408895, upload-time = "2025-11-30T20:22:51.87Z" }, + { url = "https://files.pythonhosted.org/packages/58/95/d9275b05ab96556fefff73a385813eb66032e4c99f411d0795372d9abcea/rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d", size = 422799, upload-time = "2025-11-30T20:22:53.341Z" }, + { url = "https://files.pythonhosted.org/packages/06/c1/3088fc04b6624eb12a57eb814f0d4997a44b0d208d6cace713033ff1a6ba/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7", size = 572731, upload-time = "2025-11-30T20:22:54.778Z" }, + { url = "https://files.pythonhosted.org/packages/d8/42/c612a833183b39774e8ac8fecae81263a68b9583ee343db33ab571a7ce55/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31", size = 599027, upload-time = "2025-11-30T20:22:56.212Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/525a50f45b01d70005403ae0e25f43c0384369ad24ffe46e8d9068b50086/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95", size = 563020, upload-time = "2025-11-30T20:22:58.2Z" }, + { url = "https://files.pythonhosted.org/packages/0b/5d/47c4655e9bcd5ca907148535c10e7d489044243cc9941c16ed7cd53be91d/rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d", size = 223139, upload-time = "2025-11-30T20:23:00.209Z" }, + { url = "https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15", size = 240224, upload-time = "2025-11-30T20:23:02.008Z" }, + { url = "https://files.pythonhosted.org/packages/24/95/ffd128ed1146a153d928617b0ef673960130be0009c77d8fbf0abe306713/rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1", size = 230645, upload-time = "2025-11-30T20:23:03.43Z" }, + { url = "https://files.pythonhosted.org/packages/ff/1b/b10de890a0def2a319a2626334a7f0ae388215eb60914dbac8a3bae54435/rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a", size = 364443, upload-time = "2025-11-30T20:23:04.878Z" }, + { url = "https://files.pythonhosted.org/packages/0d/bf/27e39f5971dc4f305a4fb9c672ca06f290f7c4e261c568f3dea16a410d47/rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e", size = 353375, upload-time = "2025-11-30T20:23:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/40/58/442ada3bba6e8e6615fc00483135c14a7538d2ffac30e2d933ccf6852232/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000", size = 383850, upload-time = "2025-11-30T20:23:07.825Z" }, + { url = "https://files.pythonhosted.org/packages/14/14/f59b0127409a33c6ef6f5c1ebd5ad8e32d7861c9c7adfa9a624fc3889f6c/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db", size = 392812, upload-time = "2025-11-30T20:23:09.228Z" }, + { url = "https://files.pythonhosted.org/packages/b3/66/e0be3e162ac299b3a22527e8913767d869e6cc75c46bd844aa43fb81ab62/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2", size = 517841, upload-time = "2025-11-30T20:23:11.186Z" }, + { url = "https://files.pythonhosted.org/packages/3d/55/fa3b9cf31d0c963ecf1ba777f7cf4b2a2c976795ac430d24a1f43d25a6ba/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa", size = 408149, upload-time = "2025-11-30T20:23:12.864Z" }, + { url = "https://files.pythonhosted.org/packages/60/ca/780cf3b1a32b18c0f05c441958d3758f02544f1d613abf9488cd78876378/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083", size = 383843, upload-time = "2025-11-30T20:23:14.638Z" }, + { url = "https://files.pythonhosted.org/packages/82/86/d5f2e04f2aa6247c613da0c1dd87fcd08fa17107e858193566048a1e2f0a/rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9", size = 396507, upload-time = "2025-11-30T20:23:16.105Z" }, + { url = "https://files.pythonhosted.org/packages/4b/9a/453255d2f769fe44e07ea9785c8347edaf867f7026872e76c1ad9f7bed92/rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0", size = 414949, upload-time = "2025-11-30T20:23:17.539Z" }, + { url = "https://files.pythonhosted.org/packages/a3/31/622a86cdc0c45d6df0e9ccb6becdba5074735e7033c20e401a6d9d0e2ca0/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94", size = 565790, upload-time = "2025-11-30T20:23:19.029Z" }, + { url = "https://files.pythonhosted.org/packages/1c/5d/15bbf0fb4a3f58a3b1c67855ec1efcc4ceaef4e86644665fff03e1b66d8d/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08", size = 590217, upload-time = "2025-11-30T20:23:20.885Z" }, + { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806, upload-time = "2025-11-30T20:23:22.488Z" }, + { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341, upload-time = "2025-11-30T20:23:24.449Z" }, + { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768, upload-time = "2025-11-30T20:23:25.908Z" }, + { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099, upload-time = "2025-11-30T20:23:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192, upload-time = "2025-11-30T20:23:29.151Z" }, + { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080, upload-time = "2025-11-30T20:23:30.785Z" }, + { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841, upload-time = "2025-11-30T20:23:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670, upload-time = "2025-11-30T20:23:33.742Z" }, + { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005, upload-time = "2025-11-30T20:23:35.253Z" }, + { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112, upload-time = "2025-11-30T20:23:36.842Z" }, + { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049, upload-time = "2025-11-30T20:23:38.343Z" }, + { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661, upload-time = "2025-11-30T20:23:40.263Z" }, + { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606, upload-time = "2025-11-30T20:23:42.186Z" }, + { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126, upload-time = "2025-11-30T20:23:44.086Z" }, + { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371, upload-time = "2025-11-30T20:23:46.004Z" }, + { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298, upload-time = "2025-11-30T20:23:47.696Z" }, + { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604, upload-time = "2025-11-30T20:23:49.501Z" }, + { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391, upload-time = "2025-11-30T20:23:50.96Z" }, + { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868, upload-time = "2025-11-30T20:23:52.494Z" }, + { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747, upload-time = "2025-11-30T20:23:54.036Z" }, + { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795, upload-time = "2025-11-30T20:23:55.556Z" }, + { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330, upload-time = "2025-11-30T20:23:57.033Z" }, + { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194, upload-time = "2025-11-30T20:23:58.637Z" }, + { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340, upload-time = "2025-11-30T20:24:00.2Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765, upload-time = "2025-11-30T20:24:01.759Z" }, + { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834, upload-time = "2025-11-30T20:24:03.687Z" }, + { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470, upload-time = "2025-11-30T20:24:05.232Z" }, + { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630, upload-time = "2025-11-30T20:24:06.878Z" }, + { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148, upload-time = "2025-11-30T20:24:08.445Z" }, + { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030, upload-time = "2025-11-30T20:24:10.956Z" }, + { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570, upload-time = "2025-11-30T20:24:12.735Z" }, + { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532, upload-time = "2025-11-30T20:24:14.634Z" }, +] + +[[package]] +name = "secretstorage" +version = "3.5.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "jeepney" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1c/03/e834bcd866f2f8a49a85eaff47340affa3bfa391ee9912a952a1faa68c7b/secretstorage-3.5.0.tar.gz", hash = "sha256:f04b8e4689cbce351744d5537bf6b1329c6fc68f91fa666f60a380edddcd11be", size = 19884, upload-time = "2025-11-23T19:02:53.191Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl", hash = "sha256:0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137", size = 15554, upload-time = "2025-11-23T19:02:51.545Z" }, +] + +[[package]] +name = "sse-starlette" +version = "3.3.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "starlette" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5a/9f/c3695c2d2d4ef70072c3a06992850498b01c6bc9be531950813716b426fa/sse_starlette-3.3.2.tar.gz", hash = "sha256:678fca55a1945c734d8472a6cad186a55ab02840b4f6786f5ee8770970579dcd", size = 32326, upload-time = "2026-02-28T11:24:34.36Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/61/28/8cb142d3fe80c4a2d8af54ca0b003f47ce0ba920974e7990fa6e016402d1/sse_starlette-3.3.2-py3-none-any.whl", hash = "sha256:5c3ea3dad425c601236726af2f27689b74494643f57017cafcb6f8c9acfbb862", size = 14270, upload-time = "2026-02-28T11:24:32.984Z" }, +] + +[[package]] +name = "starlette" +version = "0.52.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c4/68/79977123bb7be889ad680d79a40f339082c1978b5cfcf62c2d8d196873ac/starlette-0.52.1.tar.gz", hash = "sha256:834edd1b0a23167694292e94f597773bc3f89f362be6effee198165a35d62933", size = 2653702, upload-time = "2026-01-18T13:34:11.062Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/0d/13d1d239a25cbfb19e740db83143e95c772a1fe10202dda4b76792b114dd/starlette-0.52.1-py3-none-any.whl", hash = "sha256:0029d43eb3d273bc4f83a08720b4912ea4b071087a3b48db01b7c839f7954d74", size = 74272, upload-time = "2026-01-18T13:34:09.188Z" }, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, +] + +[[package]] +name = "typing-inspection" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, +] + +[[package]] +name = "uncalled-for" +version = "0.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/02/7c/b5b7d8136f872e3f13b0584e576886de0489d7213a12de6bebf29ff6ebfc/uncalled_for-0.2.0.tar.gz", hash = "sha256:b4f8fdbcec328c5a113807d653e041c5094473dd4afa7c34599ace69ccb7e69f", size = 49488, upload-time = "2026-02-27T17:40:58.137Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ff/7f/4320d9ce3be404e6310b915c3629fe27bf1e2f438a1a7a3cb0396e32e9a9/uncalled_for-0.2.0-py3-none-any.whl", hash = "sha256:2c0bd338faff5f930918f79e7eb9ff48290df2cb05fcc0b40a7f334e55d4d85f", size = 11351, upload-time = "2026-02-27T17:40:56.804Z" }, +] + +[[package]] +name = "uvicorn" +version = "0.41.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/32/ce/eeb58ae4ac36fe09e3842eb02e0eb676bf2c53ae062b98f1b2531673efdd/uvicorn-0.41.0.tar.gz", hash = "sha256:09d11cf7008da33113824ee5a1c6422d89fbc2ff476540d69a34c87fab8b571a", size = 82633, upload-time = "2026-02-16T23:07:24.1Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/e4/d04a086285c20886c0daad0e026f250869201013d18f81d9ff5eada73a88/uvicorn-0.41.0-py3-none-any.whl", hash = "sha256:29e35b1d2c36a04b9e180d4007ede3bcb32a85fbdfd6c6aeb3f26839de088187", size = 68783, upload-time = "2026-02-16T23:07:22.357Z" }, +] + +[[package]] +name = "watchfiles" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c2/c9/8869df9b2a2d6c59d79220a4db37679e74f807c559ffe5265e08b227a210/watchfiles-1.1.1.tar.gz", hash = "sha256:a173cb5c16c4f40ab19cecf48a534c409f7ea983ab8fed0741304a1c0a31b3f2", size = 94440, upload-time = "2025-10-14T15:06:21.08Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bb/f4/f750b29225fe77139f7ae5de89d4949f5a99f934c65a1f1c0b248f26f747/watchfiles-1.1.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:130e4876309e8686a5e37dba7d5e9bc77e6ed908266996ca26572437a5271e18", size = 404321, upload-time = "2025-10-14T15:05:02.063Z" }, + { url = "https://files.pythonhosted.org/packages/2b/f9/f07a295cde762644aa4c4bb0f88921d2d141af45e735b965fb2e87858328/watchfiles-1.1.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5f3bde70f157f84ece3765b42b4a52c6ac1a50334903c6eaf765362f6ccca88a", size = 391783, upload-time = "2025-10-14T15:05:03.052Z" }, + { url = "https://files.pythonhosted.org/packages/bc/11/fc2502457e0bea39a5c958d86d2cb69e407a4d00b85735ca724bfa6e0d1a/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14e0b1fe858430fc0251737ef3824c54027bedb8c37c38114488b8e131cf8219", size = 449279, upload-time = "2025-10-14T15:05:04.004Z" }, + { url = "https://files.pythonhosted.org/packages/e3/1f/d66bc15ea0b728df3ed96a539c777acfcad0eb78555ad9efcaa1274688f0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f27db948078f3823a6bb3b465180db8ebecf26dd5dae6f6180bd87383b6b4428", size = 459405, upload-time = "2025-10-14T15:05:04.942Z" }, + { url = "https://files.pythonhosted.org/packages/be/90/9f4a65c0aec3ccf032703e6db02d89a157462fbb2cf20dd415128251cac0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:059098c3a429f62fc98e8ec62b982230ef2c8df68c79e826e37b895bc359a9c0", size = 488976, upload-time = "2025-10-14T15:05:05.905Z" }, + { url = "https://files.pythonhosted.org/packages/37/57/ee347af605d867f712be7029bb94c8c071732a4b44792e3176fa3c612d39/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bfb5862016acc9b869bb57284e6cb35fdf8e22fe59f7548858e2f971d045f150", size = 595506, upload-time = "2025-10-14T15:05:06.906Z" }, + { url = "https://files.pythonhosted.org/packages/a8/78/cc5ab0b86c122047f75e8fc471c67a04dee395daf847d3e59381996c8707/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:319b27255aacd9923b8a276bb14d21a5f7ff82564c744235fc5eae58d95422ae", size = 474936, upload-time = "2025-10-14T15:05:07.906Z" }, + { url = "https://files.pythonhosted.org/packages/62/da/def65b170a3815af7bd40a3e7010bf6ab53089ef1b75d05dd5385b87cf08/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c755367e51db90e75b19454b680903631d41f9e3607fbd941d296a020c2d752d", size = 456147, upload-time = "2025-10-14T15:05:09.138Z" }, + { url = "https://files.pythonhosted.org/packages/57/99/da6573ba71166e82d288d4df0839128004c67d2778d3b566c138695f5c0b/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c22c776292a23bfc7237a98f791b9ad3144b02116ff10d820829ce62dff46d0b", size = 630007, upload-time = "2025-10-14T15:05:10.117Z" }, + { url = "https://files.pythonhosted.org/packages/a8/51/7439c4dd39511368849eb1e53279cd3454b4a4dbace80bab88feeb83c6b5/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:3a476189be23c3686bc2f4321dd501cb329c0a0469e77b7b534ee10129ae6374", size = 622280, upload-time = "2025-10-14T15:05:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/95/9c/8ed97d4bba5db6fdcdb2b298d3898f2dd5c20f6b73aee04eabe56c59677e/watchfiles-1.1.1-cp313-cp313-win32.whl", hash = "sha256:bf0a91bfb5574a2f7fc223cf95eeea79abfefa404bf1ea5e339c0c1560ae99a0", size = 272056, upload-time = "2025-10-14T15:05:12.156Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f3/c14e28429f744a260d8ceae18bf58c1d5fa56b50d006a7a9f80e1882cb0d/watchfiles-1.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:52e06553899e11e8074503c8e716d574adeeb7e68913115c4b3653c53f9bae42", size = 288162, upload-time = "2025-10-14T15:05:13.208Z" }, + { url = "https://files.pythonhosted.org/packages/dc/61/fe0e56c40d5cd29523e398d31153218718c5786b5e636d9ae8ae79453d27/watchfiles-1.1.1-cp313-cp313-win_arm64.whl", hash = "sha256:ac3cc5759570cd02662b15fbcd9d917f7ecd47efe0d6b40474eafd246f91ea18", size = 277909, upload-time = "2025-10-14T15:05:14.49Z" }, + { url = "https://files.pythonhosted.org/packages/79/42/e0a7d749626f1e28c7108a99fb9bf524b501bbbeb9b261ceecde644d5a07/watchfiles-1.1.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:563b116874a9a7ce6f96f87cd0b94f7faf92d08d0021e837796f0a14318ef8da", size = 403389, upload-time = "2025-10-14T15:05:15.777Z" }, + { url = "https://files.pythonhosted.org/packages/15/49/08732f90ce0fbbc13913f9f215c689cfc9ced345fb1bcd8829a50007cc8d/watchfiles-1.1.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3ad9fe1dae4ab4212d8c91e80b832425e24f421703b5a42ef2e4a1e215aff051", size = 389964, upload-time = "2025-10-14T15:05:16.85Z" }, + { url = "https://files.pythonhosted.org/packages/27/0d/7c315d4bd5f2538910491a0393c56bf70d333d51bc5b34bee8e68e8cea19/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce70f96a46b894b36eba678f153f052967a0d06d5b5a19b336ab0dbbd029f73e", size = 448114, upload-time = "2025-10-14T15:05:17.876Z" }, + { url = "https://files.pythonhosted.org/packages/c3/24/9e096de47a4d11bc4df41e9d1e61776393eac4cb6eb11b3e23315b78b2cc/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cb467c999c2eff23a6417e58d75e5828716f42ed8289fe6b77a7e5a91036ca70", size = 460264, upload-time = "2025-10-14T15:05:18.962Z" }, + { url = "https://files.pythonhosted.org/packages/cc/0f/e8dea6375f1d3ba5fcb0b3583e2b493e77379834c74fd5a22d66d85d6540/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:836398932192dae4146c8f6f737d74baeac8b70ce14831a239bdb1ca882fc261", size = 487877, upload-time = "2025-10-14T15:05:20.094Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/df24cfc6424a12deb41503b64d42fbea6b8cb357ec62ca84a5a3476f654a/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:743185e7372b7bc7c389e1badcc606931a827112fbbd37f14c537320fca08620", size = 595176, upload-time = "2025-10-14T15:05:21.134Z" }, + { url = "https://files.pythonhosted.org/packages/8f/b5/853b6757f7347de4e9b37e8cc3289283fb983cba1ab4d2d7144694871d9c/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:afaeff7696e0ad9f02cbb8f56365ff4686ab205fcf9c4c5b6fdfaaa16549dd04", size = 473577, upload-time = "2025-10-14T15:05:22.306Z" }, + { url = "https://files.pythonhosted.org/packages/e1/f7/0a4467be0a56e80447c8529c9fce5b38eab4f513cb3d9bf82e7392a5696b/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f7eb7da0eb23aa2ba036d4f616d46906013a68caf61b7fdbe42fc8b25132e77", size = 455425, upload-time = "2025-10-14T15:05:23.348Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e0/82583485ea00137ddf69bc84a2db88bd92ab4a6e3c405e5fb878ead8d0e7/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:831a62658609f0e5c64178211c942ace999517f5770fe9436be4c2faeba0c0ef", size = 628826, upload-time = "2025-10-14T15:05:24.398Z" }, + { url = "https://files.pythonhosted.org/packages/28/9a/a785356fccf9fae84c0cc90570f11702ae9571036fb25932f1242c82191c/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:f9a2ae5c91cecc9edd47e041a930490c31c3afb1f5e6d71de3dc671bfaca02bf", size = 622208, upload-time = "2025-10-14T15:05:25.45Z" }, + { url = "https://files.pythonhosted.org/packages/c3/f4/0872229324ef69b2c3edec35e84bd57a1289e7d3fe74588048ed8947a323/watchfiles-1.1.1-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:d1715143123baeeaeadec0528bb7441103979a1d5f6fd0e1f915383fea7ea6d5", size = 404315, upload-time = "2025-10-14T15:05:26.501Z" }, + { url = "https://files.pythonhosted.org/packages/7b/22/16d5331eaed1cb107b873f6ae1b69e9ced582fcf0c59a50cd84f403b1c32/watchfiles-1.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:39574d6370c4579d7f5d0ad940ce5b20db0e4117444e39b6d8f99db5676c52fd", size = 390869, upload-time = "2025-10-14T15:05:27.649Z" }, + { url = "https://files.pythonhosted.org/packages/b2/7e/5643bfff5acb6539b18483128fdc0ef2cccc94a5b8fbda130c823e8ed636/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7365b92c2e69ee952902e8f70f3ba6360d0d596d9299d55d7d386df84b6941fb", size = 449919, upload-time = "2025-10-14T15:05:28.701Z" }, + { url = "https://files.pythonhosted.org/packages/51/2e/c410993ba5025a9f9357c376f48976ef0e1b1aefb73b97a5ae01a5972755/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bfff9740c69c0e4ed32416f013f3c45e2ae42ccedd1167ef2d805c000b6c71a5", size = 460845, upload-time = "2025-10-14T15:05:30.064Z" }, + { url = "https://files.pythonhosted.org/packages/8e/a4/2df3b404469122e8680f0fcd06079317e48db58a2da2950fb45020947734/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b27cf2eb1dda37b2089e3907d8ea92922b673c0c427886d4edc6b94d8dfe5db3", size = 489027, upload-time = "2025-10-14T15:05:31.064Z" }, + { url = "https://files.pythonhosted.org/packages/ea/84/4587ba5b1f267167ee715b7f66e6382cca6938e0a4b870adad93e44747e6/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:526e86aced14a65a5b0ec50827c745597c782ff46b571dbfe46192ab9e0b3c33", size = 595615, upload-time = "2025-10-14T15:05:32.074Z" }, + { url = "https://files.pythonhosted.org/packages/6a/0f/c6988c91d06e93cd0bb3d4a808bcf32375ca1904609835c3031799e3ecae/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04e78dd0b6352db95507fd8cb46f39d185cf8c74e4cf1e4fbad1d3df96faf510", size = 474836, upload-time = "2025-10-14T15:05:33.209Z" }, + { url = "https://files.pythonhosted.org/packages/b4/36/ded8aebea91919485b7bbabbd14f5f359326cb5ec218cd67074d1e426d74/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c85794a4cfa094714fb9c08d4a218375b2b95b8ed1666e8677c349906246c05", size = 455099, upload-time = "2025-10-14T15:05:34.189Z" }, + { url = "https://files.pythonhosted.org/packages/98/e0/8c9bdba88af756a2fce230dd365fab2baf927ba42cd47521ee7498fd5211/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:74d5012b7630714b66be7b7b7a78855ef7ad58e8650c73afc4c076a1f480a8d6", size = 630626, upload-time = "2025-10-14T15:05:35.216Z" }, + { url = "https://files.pythonhosted.org/packages/2a/84/a95db05354bf2d19e438520d92a8ca475e578c647f78f53197f5a2f17aaf/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:8fbe85cb3201c7d380d3d0b90e63d520f15d6afe217165d7f98c9c649654db81", size = 622519, upload-time = "2025-10-14T15:05:36.259Z" }, + { url = "https://files.pythonhosted.org/packages/1d/ce/d8acdc8de545de995c339be67711e474c77d643555a9bb74a9334252bd55/watchfiles-1.1.1-cp314-cp314-win32.whl", hash = "sha256:3fa0b59c92278b5a7800d3ee7733da9d096d4aabcfabb9a928918bd276ef9b9b", size = 272078, upload-time = "2025-10-14T15:05:37.63Z" }, + { url = "https://files.pythonhosted.org/packages/c4/c9/a74487f72d0451524be827e8edec251da0cc1fcf111646a511ae752e1a3d/watchfiles-1.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:c2047d0b6cea13b3316bdbafbfa0c4228ae593d995030fda39089d36e64fc03a", size = 287664, upload-time = "2025-10-14T15:05:38.95Z" }, + { url = "https://files.pythonhosted.org/packages/df/b8/8ac000702cdd496cdce998c6f4ee0ca1f15977bba51bdf07d872ebdfc34c/watchfiles-1.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:842178b126593addc05acf6fce960d28bc5fae7afbaa2c6c1b3a7b9460e5be02", size = 277154, upload-time = "2025-10-14T15:05:39.954Z" }, + { url = "https://files.pythonhosted.org/packages/47/a8/e3af2184707c29f0f14b1963c0aace6529f9d1b8582d5b99f31bbf42f59e/watchfiles-1.1.1-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:88863fbbc1a7312972f1c511f202eb30866370ebb8493aef2812b9ff28156a21", size = 403820, upload-time = "2025-10-14T15:05:40.932Z" }, + { url = "https://files.pythonhosted.org/packages/c0/ec/e47e307c2f4bd75f9f9e8afbe3876679b18e1bcec449beca132a1c5ffb2d/watchfiles-1.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:55c7475190662e202c08c6c0f4d9e345a29367438cf8e8037f3155e10a88d5a5", size = 390510, upload-time = "2025-10-14T15:05:41.945Z" }, + { url = "https://files.pythonhosted.org/packages/d5/a0/ad235642118090f66e7b2f18fd5c42082418404a79205cdfca50b6309c13/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f53fa183d53a1d7a8852277c92b967ae99c2d4dcee2bfacff8868e6e30b15f7", size = 448408, upload-time = "2025-10-14T15:05:43.385Z" }, + { url = "https://files.pythonhosted.org/packages/df/85/97fa10fd5ff3332ae17e7e40e20784e419e28521549780869f1413742e9d/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6aae418a8b323732fa89721d86f39ec8f092fc2af67f4217a2b07fd3e93c6101", size = 458968, upload-time = "2025-10-14T15:05:44.404Z" }, + { url = "https://files.pythonhosted.org/packages/47/c2/9059c2e8966ea5ce678166617a7f75ecba6164375f3b288e50a40dc6d489/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f096076119da54a6080e8920cbdaac3dbee667eb91dcc5e5b78840b87415bd44", size = 488096, upload-time = "2025-10-14T15:05:45.398Z" }, + { url = "https://files.pythonhosted.org/packages/94/44/d90a9ec8ac309bc26db808a13e7bfc0e4e78b6fc051078a554e132e80160/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:00485f441d183717038ed2e887a7c868154f216877653121068107b227a2f64c", size = 596040, upload-time = "2025-10-14T15:05:46.502Z" }, + { url = "https://files.pythonhosted.org/packages/95/68/4e3479b20ca305cfc561db3ed207a8a1c745ee32bf24f2026a129d0ddb6e/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a55f3e9e493158d7bfdb60a1165035f1cf7d320914e7b7ea83fe22c6023b58fc", size = 473847, upload-time = "2025-10-14T15:05:47.484Z" }, + { url = "https://files.pythonhosted.org/packages/4f/55/2af26693fd15165c4ff7857e38330e1b61ab8c37d15dc79118cdba115b7a/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c91ed27800188c2ae96d16e3149f199d62f86c7af5f5f4d2c61a3ed8cd3666c", size = 455072, upload-time = "2025-10-14T15:05:48.928Z" }, + { url = "https://files.pythonhosted.org/packages/66/1d/d0d200b10c9311ec25d2273f8aad8c3ef7cc7ea11808022501811208a750/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:311ff15a0bae3714ffb603e6ba6dbfba4065ab60865d15a6ec544133bdb21099", size = 629104, upload-time = "2025-10-14T15:05:49.908Z" }, + { url = "https://files.pythonhosted.org/packages/e3/bd/fa9bb053192491b3867ba07d2343d9f2252e00811567d30ae8d0f78136fe/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:a916a2932da8f8ab582f242c065f5c81bed3462849ca79ee357dd9551b0e9b01", size = 622112, upload-time = "2025-10-14T15:05:50.941Z" }, +] + +[[package]] +name = "websockets" +version = "16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/04/24/4b2031d72e840ce4c1ccb255f693b15c334757fc50023e4db9537080b8c4/websockets-16.0.tar.gz", hash = "sha256:5f6261a5e56e8d5c42a4497b364ea24d94d9563e8fbd44e78ac40879c60179b5", size = 179346, upload-time = "2026-01-10T09:23:47.181Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cc/9c/baa8456050d1c1b08dd0ec7346026668cbc6f145ab4e314d707bb845bf0d/websockets-16.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:878b336ac47938b474c8f982ac2f7266a540adc3fa4ad74ae96fea9823a02cc9", size = 177364, upload-time = "2026-01-10T09:22:59.333Z" }, + { url = "https://files.pythonhosted.org/packages/7e/0c/8811fc53e9bcff68fe7de2bcbe75116a8d959ac699a3200f4847a8925210/websockets-16.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:52a0fec0e6c8d9a784c2c78276a48a2bdf099e4ccc2a4cad53b27718dbfd0230", size = 175039, upload-time = "2026-01-10T09:23:01.171Z" }, + { url = "https://files.pythonhosted.org/packages/aa/82/39a5f910cb99ec0b59e482971238c845af9220d3ab9fa76dd9162cda9d62/websockets-16.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e6578ed5b6981005df1860a56e3617f14a6c307e6a71b4fff8c48fdc50f3ed2c", size = 175323, upload-time = "2026-01-10T09:23:02.341Z" }, + { url = "https://files.pythonhosted.org/packages/bd/28/0a25ee5342eb5d5f297d992a77e56892ecb65e7854c7898fb7d35e9b33bd/websockets-16.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:95724e638f0f9c350bb1c2b0a7ad0e83d9cc0c9259f3ea94e40d7b02a2179ae5", size = 184975, upload-time = "2026-01-10T09:23:03.756Z" }, + { url = "https://files.pythonhosted.org/packages/f9/66/27ea52741752f5107c2e41fda05e8395a682a1e11c4e592a809a90c6a506/websockets-16.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c0204dc62a89dc9d50d682412c10b3542d748260d743500a85c13cd1ee4bde82", size = 186203, upload-time = "2026-01-10T09:23:05.01Z" }, + { url = "https://files.pythonhosted.org/packages/37/e5/8e32857371406a757816a2b471939d51c463509be73fa538216ea52b792a/websockets-16.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:52ac480f44d32970d66763115edea932f1c5b1312de36df06d6b219f6741eed8", size = 185653, upload-time = "2026-01-10T09:23:06.301Z" }, + { url = "https://files.pythonhosted.org/packages/9b/67/f926bac29882894669368dc73f4da900fcdf47955d0a0185d60103df5737/websockets-16.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6e5a82b677f8f6f59e8dfc34ec06ca6b5b48bc4fcda346acd093694cc2c24d8f", size = 184920, upload-time = "2026-01-10T09:23:07.492Z" }, + { url = "https://files.pythonhosted.org/packages/3c/a1/3d6ccdcd125b0a42a311bcd15a7f705d688f73b2a22d8cf1c0875d35d34a/websockets-16.0-cp313-cp313-win32.whl", hash = "sha256:abf050a199613f64c886ea10f38b47770a65154dc37181bfaff70c160f45315a", size = 178255, upload-time = "2026-01-10T09:23:09.245Z" }, + { url = "https://files.pythonhosted.org/packages/6b/ae/90366304d7c2ce80f9b826096a9e9048b4bb760e44d3b873bb272cba696b/websockets-16.0-cp313-cp313-win_amd64.whl", hash = "sha256:3425ac5cf448801335d6fdc7ae1eb22072055417a96cc6b31b3861f455fbc156", size = 178689, upload-time = "2026-01-10T09:23:10.483Z" }, + { url = "https://files.pythonhosted.org/packages/f3/1d/e88022630271f5bd349ed82417136281931e558d628dd52c4d8621b4a0b2/websockets-16.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8cc451a50f2aee53042ac52d2d053d08bf89bcb31ae799cb4487587661c038a0", size = 177406, upload-time = "2026-01-10T09:23:12.178Z" }, + { url = "https://files.pythonhosted.org/packages/f2/78/e63be1bf0724eeb4616efb1ae1c9044f7c3953b7957799abb5915bffd38e/websockets-16.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:daa3b6ff70a9241cf6c7fc9e949d41232d9d7d26fd3522b1ad2b4d62487e9904", size = 175085, upload-time = "2026-01-10T09:23:13.511Z" }, + { url = "https://files.pythonhosted.org/packages/bb/f4/d3c9220d818ee955ae390cf319a7c7a467beceb24f05ee7aaaa2414345ba/websockets-16.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:fd3cb4adb94a2a6e2b7c0d8d05cb94e6f1c81a0cf9dc2694fb65c7e8d94c42e4", size = 175328, upload-time = "2026-01-10T09:23:14.727Z" }, + { url = "https://files.pythonhosted.org/packages/63/bc/d3e208028de777087e6fb2b122051a6ff7bbcca0d6df9d9c2bf1dd869ae9/websockets-16.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:781caf5e8eee67f663126490c2f96f40906594cb86b408a703630f95550a8c3e", size = 185044, upload-time = "2026-01-10T09:23:15.939Z" }, + { url = "https://files.pythonhosted.org/packages/ad/6e/9a0927ac24bd33a0a9af834d89e0abc7cfd8e13bed17a86407a66773cc0e/websockets-16.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:caab51a72c51973ca21fa8a18bd8165e1a0183f1ac7066a182ff27107b71e1a4", size = 186279, upload-time = "2026-01-10T09:23:17.148Z" }, + { url = "https://files.pythonhosted.org/packages/b9/ca/bf1c68440d7a868180e11be653c85959502efd3a709323230314fda6e0b3/websockets-16.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:19c4dc84098e523fd63711e563077d39e90ec6702aff4b5d9e344a60cb3c0cb1", size = 185711, upload-time = "2026-01-10T09:23:18.372Z" }, + { url = "https://files.pythonhosted.org/packages/c4/f8/fdc34643a989561f217bb477cbc47a3a07212cbda91c0e4389c43c296ebf/websockets-16.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:a5e18a238a2b2249c9a9235466b90e96ae4795672598a58772dd806edc7ac6d3", size = 184982, upload-time = "2026-01-10T09:23:19.652Z" }, + { url = "https://files.pythonhosted.org/packages/dd/d1/574fa27e233764dbac9c52730d63fcf2823b16f0856b3329fc6268d6ae4f/websockets-16.0-cp314-cp314-win32.whl", hash = "sha256:a069d734c4a043182729edd3e9f247c3b2a4035415a9172fd0f1b71658a320a8", size = 177915, upload-time = "2026-01-10T09:23:21.458Z" }, + { url = "https://files.pythonhosted.org/packages/8a/f1/ae6b937bf3126b5134ce1f482365fde31a357c784ac51852978768b5eff4/websockets-16.0-cp314-cp314-win_amd64.whl", hash = "sha256:c0ee0e63f23914732c6d7e0cce24915c48f3f1512ec1d079ed01fc629dab269d", size = 178381, upload-time = "2026-01-10T09:23:22.715Z" }, + { url = "https://files.pythonhosted.org/packages/06/9b/f791d1db48403e1f0a27577a6beb37afae94254a8c6f08be4a23e4930bc0/websockets-16.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:a35539cacc3febb22b8f4d4a99cc79b104226a756aa7400adc722e83b0d03244", size = 177737, upload-time = "2026-01-10T09:23:24.523Z" }, + { url = "https://files.pythonhosted.org/packages/bd/40/53ad02341fa33b3ce489023f635367a4ac98b73570102ad2cdd770dacc9a/websockets-16.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:b784ca5de850f4ce93ec85d3269d24d4c82f22b7212023c974c401d4980ebc5e", size = 175268, upload-time = "2026-01-10T09:23:25.781Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/6158d4e459b984f949dcbbb0c5d270154c7618e11c01029b9bbd1bb4c4f9/websockets-16.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:569d01a4e7fba956c5ae4fc988f0d4e187900f5497ce46339c996dbf24f17641", size = 175486, upload-time = "2026-01-10T09:23:27.033Z" }, + { url = "https://files.pythonhosted.org/packages/e5/2d/7583b30208b639c8090206f95073646c2c9ffd66f44df967981a64f849ad/websockets-16.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:50f23cdd8343b984957e4077839841146f67a3d31ab0d00e6b824e74c5b2f6e8", size = 185331, upload-time = "2026-01-10T09:23:28.259Z" }, + { url = "https://files.pythonhosted.org/packages/45/b0/cce3784eb519b7b5ad680d14b9673a31ab8dcb7aad8b64d81709d2430aa8/websockets-16.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:152284a83a00c59b759697b7f9e9cddf4e3c7861dd0d964b472b70f78f89e80e", size = 186501, upload-time = "2026-01-10T09:23:29.449Z" }, + { url = "https://files.pythonhosted.org/packages/19/60/b8ebe4c7e89fb5f6cdf080623c9d92789a53636950f7abacfc33fe2b3135/websockets-16.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:bc59589ab64b0022385f429b94697348a6a234e8ce22544e3681b2e9331b5944", size = 186062, upload-time = "2026-01-10T09:23:31.368Z" }, + { url = "https://files.pythonhosted.org/packages/88/a8/a080593f89b0138b6cba1b28f8df5673b5506f72879322288b031337c0b8/websockets-16.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:32da954ffa2814258030e5a57bc73a3635463238e797c7375dc8091327434206", size = 185356, upload-time = "2026-01-10T09:23:32.627Z" }, + { url = "https://files.pythonhosted.org/packages/c2/b6/b9afed2afadddaf5ebb2afa801abf4b0868f42f8539bfe4b071b5266c9fe/websockets-16.0-cp314-cp314t-win32.whl", hash = "sha256:5a4b4cc550cb665dd8a47f868c8d04c8230f857363ad3c9caf7a0c3bf8c61ca6", size = 178085, upload-time = "2026-01-10T09:23:33.816Z" }, + { url = "https://files.pythonhosted.org/packages/9f/3e/28135a24e384493fa804216b79a6a6759a38cc4ff59118787b9fb693df93/websockets-16.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b14dc141ed6d2dde437cddb216004bcac6a1df0935d79656387bd41632ba0bbd", size = 178531, upload-time = "2026-01-10T09:23:35.016Z" }, + { url = "https://files.pythonhosted.org/packages/6f/28/258ebab549c2bf3e64d2b0217b973467394a9cea8c42f70418ca2c5d0d2e/websockets-16.0-py3-none-any.whl", hash = "sha256:1637db62fad1dc833276dded54215f2c7fa46912301a24bd94d45d46a011ceec", size = 171598, upload-time = "2026-01-10T09:23:45.395Z" }, +] + +[[package]] +name = "zipp" +version = "3.23.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/02/0f2892c661036d50ede074e376733dca2ae7c6eb617489437771209d4180/zipp-3.23.0.tar.gz", hash = "sha256:a07157588a12518c9d4034df3fbbee09c814741a33ff63c05fa29d26a2404166", size = 25547, upload-time = "2025-06-08T17:06:39.4Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl", hash = "sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e", size = 10276, upload-time = "2025-06-08T17:06:38.034Z" }, +] From 52c23ab2bf4f120c87209b17dfda2286eeb7dcf0 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Thu, 5 Mar 2026 12:43:38 +0100 Subject: [PATCH 09/29] [ODM-13126] Add to Earthfile --- Earthfile | 30 +++++++++++++++++++- mcp-server/__pycache__/main.cpython-314.pyc | Bin 1145 -> 0 bytes mcp-server/{ => src}/main.py | 0 3 files changed, 29 insertions(+), 1 deletion(-) delete mode 100644 mcp-server/__pycache__/main.cpython-314.pyc rename mcp-server/{ => src}/main.py (100%) diff --git a/Earthfile b/Earthfile index 542d4764..26c8b6f1 100644 --- a/Earthfile +++ b/Earthfile @@ -170,16 +170,44 @@ stoplight: FROM nginxinc/nginx-unprivileged:1.29.5-alpine COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ - COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / ARG --required OPENAPI_VERSION SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/stoplight:${OPENAPI_VERSION} SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/stoplight:latest +openapi-mcp-server: + FROM astral/uv:0.10.7-python3.13-trixie-slim + + RUN groupadd --system --gid 999 nonroot \ + && useradd --system --gid 999 --uid 999 --create-home nonroot + USER nonroot + + WORKDIR /app + + ENV PYTHONUNBUFFERED=1 + ENV PYTHONDONTWRITEBYTECODE=1 + ENV UV_SYSTEM_PYTHON=1 + ENV UV_LINK_MODE=copy + + COPY mcp-server/pyproject.toml mcp-server/uv.lock . + RUN uv sync --frozen --no-cache --no-dev + + COPY mcp-server/src /app/src + COPY +build/v1/odmApi.yaml /app/src/. + + # Run the application using uv + ENTRYPOINT ["uv"] + CMD ["run", "src/main.py"] + + ARG --required OPENAPI_VERSION + SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/openapi-mcp-server:${OPENAPI_VERSION} + SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/openapi-mcp-server:latest + main: BUILD +swagger BUILD +stoplight + BUILD +openapi-mcp-server BUILD +docs BUILD +r-api-client BUILD +python-api-client diff --git a/mcp-server/__pycache__/main.cpython-314.pyc b/mcp-server/__pycache__/main.cpython-314.pyc deleted file mode 100644 index 856a55a0bd4c6f7460c26676a3b82eebbb361cbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1145 zcmb7C&2Q646o2;kBTk%zY*?UKs+3ZwLREU$N+7YSC|M{GrM0{uAtc9glSyMWu_Jo| zG}5AQ;X@oiTy~G;1l;%=;KC6oQlmkf;KHp4B&0pc_aKmOQ($gZ*y|reJdDxXR|SA6#~Oqmb{f z#giw{D7Zo){gL}D6$C074yiM(o^e8QzGzT&`S`*u@;(@Rv>XGF(0mbmEwR)#oiS+@I8uFF$r{zGvb=tz_v}b zt1hYA{cIYqz~(8a#EYV0txmPjsbRa}JJle;BlTL~H|=4~6tRq)jK?!F6tul3@R|7m z{fR--VZX~6-o(+?I*t9-^sDU#o(uRp;IBS>!M1HA2*O*?-od{2pudI0JNRW=fp~gL z%e~fey=3~{VpsX3 zLo#!J-`%Axed3iqv0-iMzjn2roVr!MQNCZ?nCzCfHT;*GjIJ8SN!9J#FNRDyd=@ZR;TEw>xjpNKaC4E! Date: Thu, 5 Mar 2026 15:10:02 +0100 Subject: [PATCH 10/29] [ODM-13126] Remove json format --- build.gradle.kts | 2 -- .../genestack/openapi/MergeSpecifications.kt | 20 ++++--------------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index b199067f..579d27c3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,7 +26,6 @@ val processorsControllerFilePath = "${sourceDirectory}/${processorsControllerFil val openApiVersion: String = System.getenv("OPENAPI_VERSION") val mergedFileName = "odmApi.yaml" val mergedFilePath = "${sourceDirectory}/${mergedFileName}" -val mergedFilePathJson = "${sourceDirectory}/odmApi.json" tasks { val downloadSpec by registering(DownloadSpecification::class) { @@ -46,7 +45,6 @@ tasks { .map { layout.projectDirectory.file("${sourceDirectory}/${it.name}") } }) outputFile.set(layout.projectDirectory.file(mergedFilePath)) - outputFileJson.set(layout.projectDirectory.file(mergedFilePathJson)) } val generateOdmApiPython by registering(GenerateTask::class) { dependsOn(mergeSpecifications) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt index 72e323f8..940938cd 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt @@ -4,14 +4,11 @@ import org.gradle.api.DefaultTask import org.gradle.api.file.RegularFile import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty -import org.gradle.api.tasks.Optional import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.InputFiles import tools.jackson.databind.ObjectMapper -import tools.jackson.databind.SerializationFeature -import tools.jackson.databind.json.JsonMapper import tools.jackson.dataformat.yaml.YAMLFactory @@ -23,25 +20,16 @@ abstract class MergeSpecifications : DefaultTask() { @get:OutputFile abstract val outputFile: RegularFileProperty - @get:OutputFile - @get:Optional - abstract val outputFileJson: RegularFileProperty - @TaskAction fun merge() { - val yamlMapper = ObjectMapper(YAMLFactory()) - val jsonMapper = JsonMapper.builder().enable(SerializationFeature.INDENT_OUTPUT).build() + val objectMapper = ObjectMapper(YAMLFactory()) val mergedNode = inputFiles .get().map { it.asFile } .filterNot { it == outputFile.get().asFile } - .map { yamlMapper.readTree(it) } - .reduce { acc, node -> yamlMapper.updateValue(acc, node) } - - yamlMapper.writeValue(outputFile.get().asFile, mergedNode) + .map { objectMapper.readTree(it) } + .reduce { acc, node -> objectMapper.updateValue(acc, node) } - if (outputFileJson.isPresent) { - jsonMapper.writeValue(outputFileJson.get().asFile, mergedNode) - } + objectMapper.writeValue(outputFile.get().asFile, mergedNode) } } From a33156f1f14657114c4d4297325de70bad85c7d8 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 03:43:56 +0100 Subject: [PATCH 11/29] [ODM-13126] Add json file --- Earthfile | 3 ++- build.gradle.kts | 2 ++ .../openapi/DownloadSpecification.kt | 2 ++ .../genestack/openapi/MergeSpecifications.kt | 22 +++++++++++++++---- 4 files changed, 24 insertions(+), 5 deletions(-) diff --git a/Earthfile b/Earthfile index 117bb3c5..455e01cb 100644 --- a/Earthfile +++ b/Earthfile @@ -148,7 +148,7 @@ swagger: COPY +build/v1 /usr/share/nginx/html/yaml/ COPY openapi/swagger/fs / - RUN rm -f /usr/share/nginx/html/yaml/odmApi.yaml + RUN rm -f /usr/share/nginx/html/yaml/odmApi.yaml /usr/share/nginx/html/yaml/odmApi.json RUN apk add bash --no-cache && \ rewrite_entrypoint.sh && \ apk del bash && \ @@ -171,6 +171,7 @@ stoplight: COPY +build/v1/schemas /usr/share/nginx/html/schemas/ COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ + COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / ARG --required OPENAPI_VERSION diff --git a/build.gradle.kts b/build.gradle.kts index 579d27c3..b199067f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,6 +26,7 @@ val processorsControllerFilePath = "${sourceDirectory}/${processorsControllerFil val openApiVersion: String = System.getenv("OPENAPI_VERSION") val mergedFileName = "odmApi.yaml" val mergedFilePath = "${sourceDirectory}/${mergedFileName}" +val mergedFilePathJson = "${sourceDirectory}/odmApi.json" tasks { val downloadSpec by registering(DownloadSpecification::class) { @@ -45,6 +46,7 @@ tasks { .map { layout.projectDirectory.file("${sourceDirectory}/${it.name}") } }) outputFile.set(layout.projectDirectory.file(mergedFilePath)) + outputFileJson.set(layout.projectDirectory.file(mergedFilePathJson)) } val generateOdmApiPython by registering(GenerateTask::class) { dependsOn(mergeSpecifications) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt index 0cc292c4..afc97b81 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt @@ -22,9 +22,11 @@ abstract class DownloadSpecification : DefaultTask() { val version = project.objects.property() @Input + @Optional val registryUsername = project.objects.property() @Input + @Optional val registryPassword = project.objects.property() @Input diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt index dae4115f..72e323f8 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt @@ -4,11 +4,14 @@ import org.gradle.api.DefaultTask import org.gradle.api.file.RegularFile import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty +import org.gradle.api.tasks.Optional import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.InputFiles import tools.jackson.databind.ObjectMapper +import tools.jackson.databind.SerializationFeature +import tools.jackson.databind.json.JsonMapper import tools.jackson.dataformat.yaml.YAMLFactory @@ -20,14 +23,25 @@ abstract class MergeSpecifications : DefaultTask() { @get:OutputFile abstract val outputFile: RegularFileProperty + @get:OutputFile + @get:Optional + abstract val outputFileJson: RegularFileProperty + @TaskAction fun merge() { - val objectMapper = ObjectMapper(YAMLFactory()) + val yamlMapper = ObjectMapper(YAMLFactory()) + val jsonMapper = JsonMapper.builder().enable(SerializationFeature.INDENT_OUTPUT).build() + val mergedNode = inputFiles .get().map { it.asFile } .filterNot { it == outputFile.get().asFile } - .map { objectMapper.readTree(it) } - .reduce { acc, node -> objectMapper.updateValue(acc, node) } - objectMapper.writeValue(outputFile.get().asFile, mergedNode) + .map { yamlMapper.readTree(it) } + .reduce { acc, node -> yamlMapper.updateValue(acc, node) } + + yamlMapper.writeValue(outputFile.get().asFile, mergedNode) + + if (outputFileJson.isPresent) { + jsonMapper.writeValue(outputFileJson.get().asFile, mergedNode) + } } } From c4597960ce15f20e060d79c84b6da3535d88e871 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 04:06:29 +0100 Subject: [PATCH 12/29] [ODM-13126] Remove redundant annotations --- .../main/kotlin/com/genestack/openapi/DownloadSpecification.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt index afc97b81..0cc292c4 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/DownloadSpecification.kt @@ -22,11 +22,9 @@ abstract class DownloadSpecification : DefaultTask() { val version = project.objects.property() @Input - @Optional val registryUsername = project.objects.property() @Input - @Optional val registryPassword = project.objects.property() @Input From 3202c85253619c3662f61521cafb517a7156385a Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 10:18:28 +0100 Subject: [PATCH 13/29] [ODM-13126] All specs in one --- openapi/v1/cellCurator.yaml | 120 - openapi/v1/cellUser.yaml | 120 - openapi/v1/expressionCurator.yaml | 737 - openapi/v1/expressionUser.yaml | 682 - openapi/v1/fileCurator.yaml | 245 - openapi/v1/fileUser.yaml | 246 - openapi/v1/flowCytometryCurator.yaml | 744 - openapi/v1/flowCytometryUser.yaml | 688 - openapi/v1/integrationCurator.yaml | 7549 -------- openapi/v1/integrationUser.yaml | 5768 ------ openapi/v1/job.yaml | 863 - openapi/v1/libraryCurator.yaml | 470 - openapi/v1/libraryUser.yaml | 413 - openapi/v1/manageData.yaml | 189 - openapi/v1/odm.yaml | 24101 +++++++++++++++++++++++++ openapi/v1/odmApi.json | 21233 ++++++++++++++++++++++ openapi/v1/preparationCurator.yaml | 471 - openapi/v1/preparationUser.yaml | 414 - openapi/v1/referenceData.yaml | 307 - openapi/v1/referenceGenome.yaml | 189 - openapi/v1/sampleCurator.yaml | 398 - openapi/v1/sampleUser.yaml | 339 - openapi/v1/scimGroups.yaml | 373 - openapi/v1/scimUsers.yaml | 376 - openapi/v1/studyCurator.yaml | 397 - openapi/v1/studyUser.yaml | 340 - openapi/v1/tasks.yaml | 102 - openapi/v1/variantCurator.yaml | 713 - openapi/v1/variantUser.yaml | 714 - 29 files changed, 45334 insertions(+), 23967 deletions(-) delete mode 100644 openapi/v1/cellCurator.yaml delete mode 100644 openapi/v1/cellUser.yaml delete mode 100644 openapi/v1/expressionCurator.yaml delete mode 100644 openapi/v1/expressionUser.yaml delete mode 100644 openapi/v1/fileCurator.yaml delete mode 100644 openapi/v1/fileUser.yaml delete mode 100644 openapi/v1/flowCytometryCurator.yaml delete mode 100644 openapi/v1/flowCytometryUser.yaml delete mode 100644 openapi/v1/integrationCurator.yaml delete mode 100644 openapi/v1/integrationUser.yaml delete mode 100644 openapi/v1/job.yaml delete mode 100644 openapi/v1/libraryCurator.yaml delete mode 100644 openapi/v1/libraryUser.yaml delete mode 100644 openapi/v1/manageData.yaml create mode 100644 openapi/v1/odm.yaml create mode 100644 openapi/v1/odmApi.json delete mode 100644 openapi/v1/preparationCurator.yaml delete mode 100644 openapi/v1/preparationUser.yaml delete mode 100644 openapi/v1/referenceData.yaml delete mode 100644 openapi/v1/referenceGenome.yaml delete mode 100644 openapi/v1/sampleCurator.yaml delete mode 100644 openapi/v1/sampleUser.yaml delete mode 100644 openapi/v1/scimGroups.yaml delete mode 100644 openapi/v1/scimUsers.yaml delete mode 100644 openapi/v1/studyCurator.yaml delete mode 100644 openapi/v1/studyUser.yaml delete mode 100644 openapi/v1/tasks.yaml delete mode 100644 openapi/v1/variantCurator.yaml delete mode 100644 openapi/v1/variantUser.yaml diff --git a/openapi/v1/cellCurator.yaml b/openapi/v1/cellCurator.yaml deleted file mode 100644 index 127461f5..00000000 --- a/openapi/v1/cellCurator.yaml +++ /dev/null @@ -1,120 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving cells. - title: ODM API - version: default-released -tags: - - name: Cells as Curator -paths: - /api/v1/as-curator/cells/{id}: - get: - operationId: getCellByIdAsCurator - parameters: - - description: Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Cell" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided ID could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve a cell by ID - tags: - - Cells as Curator - /api/v1/as-curator/cells/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. - To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. - If there are no more results you will just retrieve an empty result. - operationId: getCellsByGroupAsCurator - parameters: - - description: Unique identifier (accession) of the cell group. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 10000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CellListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: { } - description: Cell data cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cells from a given group - tags: - - Cells as Curator -components: - schemas: - Cell: - $ref: "./schemas/cell/Cell.yaml" - CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/cellUser.yaml b/openapi/v1/cellUser.yaml deleted file mode 100644 index 9af2eb80..00000000 --- a/openapi/v1/cellUser.yaml +++ /dev/null @@ -1,120 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving cells. - title: ODM API - version: default-released -tags: - - name: Cells as User -paths: - /api/v1/as-user/cells/{id}: - get: - operationId: getCellByIdAsUser - parameters: - - description: Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Cell" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided ID could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve a cell by ID - tags: - - Cells as User - /api/v1/as-user/cells/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. - To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. - If there are no more results you will just retrieve an empty result. - operationId: getCellsByGroupAsUser - parameters: - - description: Unique identifier (accession) of the cell group. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 10000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CellListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: { } - description: Cell data cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cells from a given group - tags: - - Cells as User -components: - schemas: - Cell: - $ref: "./schemas/cell/Cell.yaml" - CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/expressionCurator.yaml b/openapi/v1/expressionCurator.yaml deleted file mode 100644 index 191d7c22..00000000 --- a/openapi/v1/expressionCurator.yaml +++ /dev/null @@ -1,737 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the expressionCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Expression SPoT as Curator -paths: - /api/v1/as-curator/expressions: - get: - description: |+ - Retrieve all expression data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getExpressionDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that corresponds to the column and is used to link data from the same - run to a sample, library or preparation. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minExpressionLevel - schema: - format: double - type: number - - description: "List of features to return. These features must match exactly\ - \ the probe IDs in the GCT file. Example: `1552269_at`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionResponse" - description: Retrieved Expression data. - "400": - content: {} - description: Expression data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple expression data and metadata objects - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchExpressionGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group/by/run/{id}: - get: - operationId: getExpressionGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/group/{id}: - get: - operationId: getExpressionGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression group by ID (groupId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchExpressionRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/{id}: - get: - operationId: getExpressionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by ID (itemId) - tags: - - Expression SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateExpressionRunAsCurator - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update metadata object by expression object run ID (runId) - tags: - - Expression SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/expressions/{id}/versions: - get: - operationId: getExpressionVersionsAsCurator - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of expression object versions by run ID (runId) - tags: - - Expression SPoT as Curator - /api/v1/as-curator/expressions/{id}/versions/{version}: - get: - operationId: getExpressionByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the expression object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by run ID and its version - tags: - - Expression SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" - ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/expressionUser.yaml b/openapi/v1/expressionUser.yaml deleted file mode 100644 index b7f4e3b4..00000000 --- a/openapi/v1/expressionUser.yaml +++ /dev/null @@ -1,682 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the expressionUser API endpoints for ODM. These are typically used to find and retrieve any tabular data (not only expression data) except Gene Variant or Flow Cytometry. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Expression SPoT as User -paths: - /api/v1/as-user/expressions: - get: - description: |+ - Retrieve all expression data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getExpressionDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that corresponds to the column and is used to link data from the same - run to a sample, library or preparation. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minExpressionLevel - schema: - format: double - type: number - - description: "List of features to return. These features must match exactly\ - \ the probe IDs in the GCT file. Example: `1552269_at`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionResponse" - description: Retrieved Expression data. - "400": - content: {} - description: Expression data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple expression data and metadata objects - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchExpressionGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by expression metadata (key-value metadata pair(s)). E.g. - `"Normalization Method"=TPM`. - in: query - name: filter - schema: - type: string - - description: Search for expression objects via a full text query over all - expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group/by/run/{id}: - get: - operationId: getExpressionGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/group/{id}: - get: - operationId: getExpressionGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression group by ID (groupId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchExpressionRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}: - get: - operationId: getExpressionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ExpressionItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by ID (itemId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}/versions: - get: - operationId: getExpressionVersionsAsUser - parameters: - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of expression object versions by run ID (runId) - tags: - - Expression SPoT as User - /api/v1/as-user/expressions/{id}/versions/{version}: - get: - operationId: getExpressionByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Expression object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single expression object by run ID and its version - tags: - - Expression SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" - ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/fileCurator.yaml b/openapi/v1/fileCurator.yaml deleted file mode 100644 index 591e3860..00000000 --- a/openapi/v1/fileCurator.yaml +++ /dev/null @@ -1,245 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving files. - title: ODM API - version: default-released -tags: - - name: Files as Curator -paths: - /api/v1/as-curator/files/{id}/download: - head: - description: |+ - Check if a file exists by its accession. - - This endpoint can be used to check if a file exists and accessible before downloading it. - operationId: headFileAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - description: File exists. Additional metadata is provided in the response headers. - "400": - content: {} - description: File cannot be downloaded. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to" - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - tags: - - Files as Curator - get: - description: |+ - Download a file by its accession. - operationId: getFileAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - name: Range - in: header - required: false - schema: - type: string - example: bytes=0- - description: | - Request a specific range of bytes to support partial downloads. - Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several - ranges is not supported. - responses: - "200": - description: File downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "206": - description: Partial content downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "400": - content: {} - description: File cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a file by ID (accession) - tags: - - Files as Curator - /api/v1/as-curator/files/{id}: - get: - operationId: getFileMetadataByIdAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/AFile" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by ID (accession) - tags: - - Files as Curator - /api/v1/as-curator/files: - get: - operationId: getFilesMetadataAsCurator - description: |- - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects. - parameters: - - in: query - name: filter - description: Filter by files metadata (key-value metadata pair(s)). - schema: - type: string - - in: query - name: query - description: Search for files via a full-text query over all file metadata. - schema: - type: string - - in: query - name: includeContents - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - required: false - schema: - default: false - type: boolean - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by its fields - tags: - - Files as Curator -components: - schemas: - AFile: - $ref: "./schemas/afile/AFile.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/fileUser.yaml b/openapi/v1/fileUser.yaml deleted file mode 100644 index 6bbf2e5e..00000000 --- a/openapi/v1/fileUser.yaml +++ /dev/null @@ -1,246 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the APIs for retrieving files. - title: ODM API - version: default-released -tags: - - name: Files as User -paths: - /api/v1/as-user/files/{id}/download: - head: - description: |+ - Check if a file exists by its accession. - - This endpoint can be used to check if a file exists and accessible before downloading it. - operationId: headFileAsUser - summary: Check if a file exists by ID (accession). - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - description: File exists. Additional metadata is provided in the response headers. - "400": - content: {} - description: File cannot be downloaded. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to" - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - tags: - - Files as User - get: - description: |+ - Download a file by its accession. - operationId: getFileAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - name: Range - in: header - required: false - schema: - type: string - example: bytes=0- - description: | - Request a specific range of bytes to support partial downloads. - Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several - ranges is not supported. - responses: - "200": - description: File downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "206": - description: Partial content downloaded successfully - content: - application/octet-stream: - schema: - type: string - format: binary - "400": - content: {} - description: File cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "406": - content: {} - description: File cannot be downloaded. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a file by ID (accession) - tags: - - Files as User - /api/v1/as-user/files/{id}: - get: - operationId: getFileMetadataByIdAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/AFile" - description: The request was successful. The returned value is the object. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by ID (accession) - tags: - - Files as User - /api/v1/as-user/files: - get: - operationId: getFilesMetadataAsUser - description: |- - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects. - parameters: - - in: query - name: filter - description: Filter by files metadata (key-value metadata pair(s)). - schema: - type: string - - in: query - name: query - description: Search for files via a full-text query over all file metadata. - schema: - type: string - - in: query - name: includeContents - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - required: false - schema: - default: false - type: boolean - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by its fields - tags: - - Files as User -components: - schemas: - AFile: - $ref: "./schemas/afile/AFile.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/flowCytometryCurator.yaml b/openapi/v1/flowCytometryCurator.yaml deleted file mode 100644 index 813788db..00000000 --- a/openapi/v1/flowCytometryCurator.yaml +++ /dev/null @@ -1,744 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the flowCytometryCurator API endpoints for ODM. These are typically used to find and retrieve flow cytometry data and metadata as well as update metadata. - The APIs can be used for gated flow cytometry data in FACS format. For flow cytometry data in FCS format use expression endpoints. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Flow Cytometry SPoT as Curator -paths: - /api/v1/as-curator/flow-cytometries: - get: - description: |+ - Retrieve all flow cytometry data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getFlowCytometryDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that identifies a set of rows related to one run and is used to link - data from the run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" - in: query - name: readoutType - schema: - type: string - - description: |- - Value of "Cell Population" column. E.g.: `"total cells"`, `CD45+,live/CD45+`, `CD3+`. - - Note that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`. - in: query - name: population - schema: - type: string - - description: "Marker value. E.g.: `PD1`, `BV786`" - in: query - name: marker - schema: - type: string - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minValue - schema: - type: number - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryResponse" - description: Retrieved Flow Cytometry data. - "400": - content: {} - description: Flow Cytometry data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple flow cytometry data and metadata objects - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchFlowCytometryGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group/by/run/{id}: - get: - operationId: getFlowCytometryGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (accession) - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/group/{id}: - get: - operationId: getFlowCytometryGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by ID (accession) - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchFlowCytometryRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/{id}: - get: - operationId: getFlowCytometryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateFlowCytometryAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update object metadata - tags: - - Flow Cytometry SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/flow-cytometries/{id}/versions: - get: - operationId: getFlowCytometryVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Flow Cytometry SPoT as Curator - /api/v1/as-curator/flow-cytometries/{id}/versions/{version}: - get: - operationId: getFlowCytometryByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" - FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/flowCytometryUser.yaml b/openapi/v1/flowCytometryUser.yaml deleted file mode 100644 index 20ec634d..00000000 --- a/openapi/v1/flowCytometryUser.yaml +++ /dev/null @@ -1,688 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the flowCytometryUser API endpoints for ODM. These are typically used to find and retrieve flow cytometry data and metadata. - The APIs can be used for gated flow cytometry data in FACS format. For flow cytometry data in FCS format use expression endpoints. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Flow Cytometry SPoT as User -paths: - /api/v1/as-user/flow-cytometries: - get: - description: |+ - Retrieve all flow cytometry data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getFlowCytometryDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Autogenerated numeric ID that identifies a set of rows related to one run and is used to link - data from the run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" - in: query - name: readoutType - schema: - type: string - - description: |- - Value of "Cell Population" column. E.g.: `"total cells"`, `CD45+,live/CD45+`, `CD3+`. - - Note that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`. - in: query - name: population - schema: - type: string - - description: "Marker value. E.g.: `PD1`, `BV786`" - in: query - name: marker - schema: - type: string - - description: Minimum threshold (inclusive) for returned expression values. - in: query - name: minValue - schema: - type: number - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryResponse" - description: Retrieved Flow Cytometry data. - "400": - content: {} - description: Flow Cytometry data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple flow cytometry data and metadata objects - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchFlowCytometryGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by flow cytometry metadata (key-value metadata pair(s)). - E.g. `Organ=blood`. - in: query - name: filter - schema: - type: string - - description: Search for flow cytometry objects via a full text query over - all flow cytometry metadata. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group/by/run/{id}: - get: - operationId: getFlowCytometryGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/group/{id}: - get: - operationId: getFlowCytometryGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchFlowCytometryRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}: - get: - operationId: getFlowCytometryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FlowCytometryItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}/versions: - get: - operationId: getFlowCytometryVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Flow Cytometry SPoT as User - /api/v1/as-user/flow-cytometries/{id}/versions/{version}: - get: - operationId: getFlowCytometryByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample flow cytometry by ID (accession) - tags: - - Flow Cytometry SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" - FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/integrationCurator.yaml b/openapi/v1/integrationCurator.yaml deleted file mode 100644 index 5173adbd..00000000 --- a/openapi/v1/integrationCurator.yaml +++ /dev/null @@ -1,7549 +0,0 @@ -openapi: 3.1.0 -info: - description: | - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM Integration API - version: default-released -tags: -- name: Cell integration as Curator -- name: Expression integration as Curator -- name: Files integration as Curator -- name: Flow Cytometry (FACS) integration as Curator -- name: Library integration as Curator -- name: Linkage as Curator -- name: Metadata versioning as Curator -- name: Omics queries as Curator -- name: Preparation integration as Curator -- name: Sample integration as Curator -- name: Study integration as Curator -- name: Validation summary as Curator -- name: Variant integration as Curator -paths: - /api/v1/as-curator/data-types: - get: - description: This endpoint is for instructional uses and can be used to get - the latest list of Data Types. - operationId: getDataTypesAsCurator - responses: - "200": - content: - application/json: - schema: - items: - type: string - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Lists all available data types. - tags: - - Linkage as Curator - /api/v1/as-curator/data-types/links: - get: - description: "This endpoint should be used for instructional needs, and can\ - \ be used in order to get the links between the Data Types." - operationId: getDataTypesLinksAsCurator - parameters: - - description: Return only links with the specified data type. - in: query - name: type - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/SourceTypePair" - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List all possible links between data types that match the specified - criteria. - tags: - - Linkage as Curator - /api/v1/as-curator/integration/link/expression/by/library/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByLibraryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related library ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/by/preparation/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByPreparation - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related preparation - ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related sample ID (accession) - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getExpressionGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId} - : post: - description: |- - Create a link between a group of cell expression objects and a group of cell metadata. - - A cell expression object can be linked to one cell metadata object only. - operationId: createExpressionGroupCellGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell expression group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the cell metadata group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) cell links were created. - "204": - content: {} - description: All links were created. - "400": - content: {} - description: "Incorrect Cell or Expression group provided, see error message for details." - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of cell expression objects and a group of cell metadata. - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - library objects - operationId: deleteExpressionGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of library - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of library objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) sample links created. - "204": - content: {} - description: Link created. - "400": - content: {} - description: "Library group, signal group or libraries to link not found" - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - library objects - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - preparation objects - operationId: deleteExpressionGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of preparation - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of preparation objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: {} - description: Some (not all) sample links created. - "204": - content: {} - description: Link created. - "400": - content: {} - description: "Preparation group, signal group or preparations to link not\ - \ found" - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - preparation objects - tags: - - Expression integration as Curator - ? /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete link between a group of expression objects and a group of - sample objects - operationId: deleteExpressionGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of expression objects and a group of sample - objects - tags: - - Expression integration as Curator - post: - description: |- - Create a link between a group of expression objects and a group of sample objects. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createExpressionGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to a GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "400": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of expression objects and a group of - sample objects - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToLibraryPairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToPreparationPairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ - \ unique runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}: - delete: - description: Delete link between an expression object and a library - operationId: deleteExpressionLibraryLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a library - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a library. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionLibraryLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a library - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}: - delete: - description: Delete link between an expression object and a preparation - operationId: deleteExpressionPreparationLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a preparation - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a preparation. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionPreparationLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a preparation - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between an expression object and a sample - operationId: deleteExpressionSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between an expression object and a sample - tags: - - Expression integration as Curator - post: - description: |- - Create a link between an expression object and a sample. - - An expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Expression objects of the same group can only be linked to objects of the same study. - operationId: createExpressionSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between an expression object and a sample - tags: - - Expression integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry run-level data by querying related sample ID - (accession) - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getFlowCytometryGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Flow Cytometry (FACS) integration as Curator - ? /api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete link between a group of flow-cytometry objects and a group - of sample objects - operationId: deleteFlowCytometryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a FACS file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of flow-cytometry objects and a group of - sample objects - tags: - - Flow Cytometry (FACS) integration as Curator - post: - description: |- - Create a link between a group of flow-cytometry objects and a group of sample objects. - - A flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Flow-cytometry objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createFlowCytometryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a FACS file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of flow-cytometry objects and a group - of sample objects - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between a flow-cytometry object and a sample - operationId: deleteFlowCytometrySampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level data block - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a flow-cytometry object and a sample - tags: - - Flow Cytometry (FACS) integration as Curator - post: - description: |- - Create a link between a flow-cytometry object and a sample. - - A flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Flow-cytometry objects of the same group can only be linked to objects of the same study. - operationId: createFlowCytometrySampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level data block - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a flow-cytometry object and a sample - tags: - - Flow Cytometry (FACS) integration as Curator - /api/v1/as-curator/integration/link/libraries/by/samples: - get: - description: |+ - Retrieve library metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibrariesBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related samples - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/by/sample/{id}: - get: - operationId: getLibraryBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related sample ID (accession) - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/group/by/study/{id}: - get: - operationId: getLibraryGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}: - delete: - description: Delete links between samples and libraries related to the specified - group - operationId: deleteLibraryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the library group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete links between samples and libraries related to the specified - group - tags: - - Library integration as Curator - post: - description: |- - Create links between samples and libraries. - - Library objects of the same group can only be linked to objects of the same study. - operationId: createLibraryGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the library group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create links between samples and libraries - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibraryLinksToSamplesAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve library-samples pairs by group id. Pagination is based on\ - \ unique libraries, not unique pairs." - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}: - delete: - description: Delete a link between a library and a sample - operationId: deleteLibrarySampleLinkAsCurator - parameters: - - description: The ID (accession) of the library object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete a link between a library and a sample - tags: - - Library integration as Curator - post: - description: |- - Create a link between a library and a sample. - - Library objects of the same group can only be linked to objects of the same study. - operationId: createLibrarySampleLinkAsCurator - parameters: - - description: The ID (accession) of the library object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a library and a sample - tags: - - Library integration as Curator - /api/v1/as-curator/integration/link/preparation/by/sample/{id}: - get: - operationId: getPreparationBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related sample ID (accession) - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/group/by/study/{id}: - get: - operationId: getPreparationGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Preparation integration as Curator - ? /api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId} - : delete: - description: Delete links between samples and preparations related to the specified - group - operationId: deletePreparationGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the preparation group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete links between samples and preparations related to the specified - group - tags: - - Preparation integration as Curator - post: - description: |- - Create links between samples and preparations. - - Preparation objects of the same group can only be linked to objects of the same study. - operationId: createPreparationGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the preparation group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create links between samples and preparations - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationLinksToSamplesAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ preparations, not unique pairs." - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}: - delete: - description: Delete a link between a preparation and a sample - operationId: deletePreparationSampleLinkAsCurator - parameters: - - description: The ID (accession) of the preparation object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete a link between a preparation and a sample - tags: - - Preparation integration as Curator - post: - description: |- - Create a link between a preparation and a sample. - - Preparation objects of the same group can only be linked to objects of the same study. - operationId: createPreparationSampleLinkAsCurator - parameters: - - description: The ID (accession) of the preparation object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a preparation and a sample - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/preparations/by/samples: - get: - description: |+ - Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationsBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related samples - tags: - - Preparation integration as Curator - /api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}: - delete: - description: Delete link between a group of sample objects and a study - operationId: deleteSampleGroupStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of sample objects and a study - tags: - - Sample integration as Curator - post: - description: |- - Create a link between a group of sample objects and a study. - - Sample objects of the same group can only be linked to the same study. - operationId: createSampleGroupStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of sample objects and a study - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}: - delete: - description: Delete link between a sample and a study - operationId: deleteSampleStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a sample and a study - tags: - - Sample integration as Curator - post: - description: |- - Create a link between a sample and a study. - - Sample objects of the same group can only be linked to the same study. - operationId: createSampleStudyLinkAsCurator - parameters: - - description: The ID (accession) of the sample object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the study object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a sample and a study - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/libraries: - get: - description: |+ - Retrieve sample metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related libraries - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/preparations: - get: - description: |+ - Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related preparations - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/samples/by/study/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related study ID (accession) - tags: - - Sample integration as Curator - /api/v1/as-curator/integration/link/studies/by/libraries: - get: - description: |+ - Retrieve study metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related libraries - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/preparations: - get: - description: |+ - Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related preparations - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/samples: - get: - description: |+ - Retrieve study metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesBySamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by sample metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all sample metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related samples - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/study/by/sample/{id}: - get: - operationId: getStudyBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying sample ID (accession) - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/studies/by/files: - get: - description: |+ - Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Attachment files (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByFilesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by attachment file metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all attached files metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related attachment files - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/study/by/file/{id}: - get: - operationId: getStudyByFileAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying attachment file ID (accession) - tags: - - Study integration as Curator - /api/v1/as-curator/integration/link/variant/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantBySampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant run-level data by querying related sample ID (accession) - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getVariantGroupsByStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}: - delete: - description: Delete link between a group of variant objects and a group of sample - objects - operationId: deleteVariantGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a VCF file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a group of variant objects and a group of sample - objects - tags: - - Variant integration as Curator - post: - description: |- - Create a link between a group of variant objects and a group of sample objects. - - A variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Variant objects of the same group can only be linked to objects of the same study. - - Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default. - operationId: createVariantGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the group of run-level objects (corresponding - to the column in a VCF file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - - description: Metadata field containing sample IDs to link omics data to samples. - The template applied to the study must contain this field in the sample - section. - in: query - name: linkingAttribute - schema: - type: string - responses: - "200": - content: {} - description: Not all signal data were linked to the samples. - "204": - content: {} - description: All signal data were linked to the samples from the specified - sample group. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: "Sample group, signal group or samples to the link were not\ - \ found, or the specified linking attribute was not found." - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a group of variant objects and a group of sample - objects - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantRunToSamplePairsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}: - delete: - description: Delete link between a variant object and a sample - operationId: deleteVariantSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link deleted. - "400": - content: {} - description: Link cannot be deleted. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete link between a variant object and a sample - tags: - - Variant integration as Curator - post: - description: |- - Create a link between a variant object and a sample. - - A variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created. - Variant objects of the same group can only be linked to objects of the same study. - operationId: createVariantSampleLinkAsCurator - parameters: - - description: The ID (accession) of the run-level object (corresponding to - the column in a VCG/GCT file) - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample object - in: path - name: targetId - required: true - schema: - type: string - responses: - "204": - content: {} - description: Link created. - "400": - content: {} - description: Link cannot be created. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Create a link between a variant object and a sample - tags: - - Variant integration as Curator - /api/v1/as-curator/integration/fulltext/search/studies: - post: - description: |- - Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned. - - The endpoint returns: - - a list of studies with their metadata summary; - - a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via "Configure facets" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted. - - Filter attributes for fulltext search: - - `"type": "FULL_TEXT"` - - `"match"` - - `"mode"` - - For details on two latter ones, see the request body model. Only one filter with `"type=": "FULL_TEXT"` can be passed in the request body. - - To filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed. - - It is possible to call the endpoint without any filters, then all the studies available to the user are returned. - operationId: searchStudiesByFilterAsCurator - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SearchStudyRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FindObjectsResponse" - description: The request was successful. Retrieved studies and filters. - "400": - content: {} - description: Invalid request body - "401": - content: {} - description: User is not authenticated. Please supply a valid Genestack - API token in the `Genestack-API-Token` HTTP header (this token may be - obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - summary: Find and retrieve studies by full-text or facet query - tags: - - Study integration as Curator - x-codegen-request-body-name: request - /api/v1/as-curator/links: - delete: - description: "This method should be used in case you want to delete the links\ - \ of an object. Please, keep in mind that deleting a link between Study and\ - \ Sample will not delete a link between corresponding Sample and it’s signal." - operationId: deleteLinkAsCurator - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - responses: - "204": - content: {} - description: Link has been successfully deleted. - "400": - content: {} - description: Invalid data in request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No links were found. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Deletes existing links matching the specified criteria. - tags: - - Linkage as Curator - get: - description: Please make sure that this endpoint should be used only for getting - all links to a specific object. In case you specify both firstId and secondId - an expected answer would be true for existing links and false for no link - between the objects. - operationId: getLinksByParamsAsCurator - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - - description: Param says to skip that many links before beginning to return - links. - in: query - name: offset - schema: - default: 0 - format: int32 - type: integer - - description: Param says to limit the count of returned links. - in: query - name: limit - schema: - default: 1000 - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Finds existing links matching the specified criteria. - tags: - - Linkage as Curator - post: - description: "This method should be used only in case you need to create links\ - \ between 2 objects. Links are created both ways (e.g. when linking Object\ - \ A to Object B it can be done both ways, by linking firstType to secondType\ - \ and vice versa)." - operationId: saveLinksAsCurator - requestBody: - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Link" - type: array - required: false - responses: - "200": - content: {} - description: Links were updated or not modified. - "201": - content: {} - description: At least one new link has been created.Some other links might - have been updated or not modified. - "400": - content: {} - description: Invalid data in request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "409": - content: {} - description: Link cannot be created due to conflict with existing link - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Creates new links between objects. - tags: - - Linkage as Curator - x-codegen-request-body-name: links - /api/v1/as-curator/links/get-batch: - post: - description: Please make sure to use that endpoint for batch calls only. You - are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same - time. Please always specify firstType. - operationId: getLinksByIdsAsCurator - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/BatchOfIds" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Finds existing links by passing many IDs. \nPagination goes through\ - \ all links matched the criteria." - tags: - - Linkage as Curator - x-codegen-request-body-name: request - /api/v1/as-curator/omics/cells: - get: - description: |- - Retrieve cell objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsAsCurator - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: | - Filter by library metadata (key-value metadata pair(s)). E.g. `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: | - Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: | - Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: | - Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to cell expression data and originally\ - \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the cell - \ measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`.\n - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve Cell objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/cells/expression/data: - get: - description: |- - Retrieve cell expression objects by searching across multiple metadata types. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsExpressionDataAsCurator - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cell expression objects by searching across multiple metadata types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/data: - get: - description: "Retrieve any data objects whose linked data matches all supplied\ - \ conditions.This endpoint does not support search by expression linked to Cell\ - \ group. Use /omics/cells/expression/data endpoint for search by Cell expression.\ - \n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ - It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ - \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ - 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ - \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ - \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ - \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ - \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ - \ backslash characters in the query need to be escaped with a backslash (`\\\ - `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ - \ an operator. The `=` operator matches literal values/string. The `!=` operator\ - \ matches anything except the literal value/string. The `<` or `>` operators\ - \ match numerical results that are less or greater than the supplied value.\ - \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ - \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ - \ The set of valid keys depends on the specific query type, and is documented\ - \ in the query parameter summary. The values can be simple non-whitespace\ - \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ - \ the value may be be a comma-delimited list of string values. Others require\ - \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter\ - \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ - \ to separate out the terms and operators. Parentheses `( )` can be used for\ - \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ - \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ - \ of an omics data file are associated via their CHAIN_ID metadata value.\ - \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ - \ version number or specific omics data file accessions to include them in\ - \ the query. If nothing is supplied to the useVersions parameter then only\ - \ the active version (which is usually the last one imported) is queried.\ - \ This acts as a filter before the rest of the query is carried out.\n\nExample\ - \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ - useVersions=v2 (query the second version. If there is no second version then\ - \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ - \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ - \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ - \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ - \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ - \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ - \ reasons this endpoint returns results in \"pages\" of limited size together\ - \ with a `cursor` tag. To retrieve the next page of results please supply\ - \ this `cursor` tag to resume the query from your previous result and get\ - \ the next page. To return all results iterate through pages using \ - \ cursor values until the `resultsExhausted` response field is true.\n\n" - operationId: omicsSearchExpressionDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve data objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchExpressionGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/expression/streamed-data: - get: - description: |+ - Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute. - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Libraries (full-text or metadata key-value pair) - 3. Preparations (full-text or metadata key-value pair) - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedExpressionDataAsCurator - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Deprecated; use `exQuery` parameter instead. Filters results\ - \ by the feature column (e.g., Gene ID). The feature parameter value must\ - \ match the name of the identifier in the GCT file (under the NAME column).\ - \ Example: `ENSG00000077044`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: Accession of the expression group object (GCT) - in: query - name: groupAccession - required: true - schema: - type: string - - description: The number of digits after the decimal point for floating-point - values. The final value is rounded up. Must be non-negative. The default - is 4. - in: query - name: roundDigits - schema: - default: 4 - format: int32 - type: integer - responses: - "200": - content: - text/csv: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Expression data. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Stream data from a given tabular file - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/flow-cytometry/data: - get: - description: |+ - Retrieve flow cytometry data objects whose linked data matches all supplied conditions. - - Note: A flow cytometry data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry data objects by searching across multiple data - types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/flow-cytometry/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/samples: - get: - description: |+ - Retrieve sample metadata objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchSamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata objects by searching across multiple data - types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/data: - get: - description: |+ - Retrieve variant data objects whose linked data matches all supplied conditions. - - Note: A variant data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked expression objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantDataAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant data objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: "Unique identifier (accession) of Reference Genome object." - in: query - name: referenceGenomeId - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/variant/streamed-data: - get: - description: |+ - Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute. - - ## Conditions - It is possible to supply conditions for Samples (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedVariantDataAsCurator - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: Accession of the variant group object (VCF) - in: query - name: groupAccession - required: true - schema: - type: string - responses: - "200": - content: - text/tab-separated-values: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Variant data. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Stream data from a given VCF file - tags: - - Omics queries as Curator - /api/v1/as-curator/omics/cells/analytics/cell-ratio: - post: - operationId: cellRatioAsCurator - summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data." - tags: - - "[BETA] Analytics omics queries as Curator" - description: |+ - This endpoint calculates cell ratio statistics based on single-cell metadata. - - It allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster) - relative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata. - - `countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters. - In case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter. - - The endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/CRRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CRResponse" - description: Cell ratio result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/omics/cells/analytics/differential-expression: - post: - operationId: differentialExpressionAsCurator - summary: "[BETA] Perform differential gene expression analytics between case and control cell groups" - tags: - - "[BETA] Analytics omics queries as Curator" - # The descriptions below are also duplicated in the schema description, make sure to keep them in sync. - description: |+ - This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data. - - Consult `/omics` search endpoints to find description of parameters within the cell groups. - The response includes per-gene metrics that characterize expression differences between the two groups: - - `Gene name` - gene identifier. - - `Case cell count` - number of cells expressing the gene in the case group. - - `Control cell count` - number of cells expressing the gene in the control group. - - `Average expression (case)` - mean expression level across case cells. - - `Average expression (control)` - mean expression level across control cells. - - `Expression difference` - numerical difference between average expressions. - - `Fold change` - ratio of average expressions between case and control groups. - - `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups. - - `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - - Results are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DERequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DEResponse" - description: Differential expression result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/omics/cells/analytics/gene-summary: - post: - operationId: geneSummaryAsCurator - summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data." - tags: - - "[BETA] Analytics omics queries as Curator" - description: |+ - This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets. - It aggregates and summarizes expression data for each gene to help assess variability, distribution, - and intensity of expression within the population of cells. - - The computed metrics include: - - `Gene name` - gene identifier. - - `Cell count` - number of cells with measurable expression for each gene. - - `Mean expression value` - - `Median expression value` - - `Quantiles` - configurable expression percentiles. - - `Histogram (density)` - binned distribution of expression levels for visualization. - - `Standard deviation` - dispersion of expression values. - - `Minimum and maximum values` - range of expression across cells. - - Results are sorted by gene name. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/GSRequest" - responses: - "200": - description: Gene summary result - content: - application/json: - schema: - $ref: "#/components/schemas/GSResponse" - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |+ - User is not authenticated. Please supply a valid Access Token in the `Authorization` - HTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token` - header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: |+ - An internal server error occurred. This indicates an unexpected - failure in the Genestack system, please file a bug report to support@genestack.com, - including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-curator/integration/studies/{id}/tasks/publish-versions: - post: - description: This endpoint publishes information from drafts and creates new - metadata versions for the specified study and all associated objects. The - version name is set to “Auto-published by API call”. Only curators with access - to the specified studies can use this method. - operationId: publishStudyByAccessionAsCurator - parameters: - - description: Supply the accession of the study to be published - in: path - name: id - required: true - schema: - type: string - - description: Supply text to name this version. If not supplied the version - name is set to “Auto-published by API call” - in: query - name: versionMessage - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Forbidden - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Asynchronous task that publishes all pending versions for a single - study. - tags: - - Metadata versioning as Curator - /api/v1/as-curator/integration/studies/{id}/validation-summary: - get: - operationId: getStudyValidationSummary - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/StudyValidationSummary" - description: Study validation result. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve validation summary by querying study ID (accession) - tags: - - Validation summary as Curator - /api/v1/as-curator/integration/link/files/by/study/{id}: - get: - operationId: getFilesByStudyAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by study ID - tags: - - Files integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}: - post: - description: |- - Create links between cells and samples. - - Cell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study. - operationId: createCellGroupSampleGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the sample group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to samples. - "204": - content: { } - description: Cell objects have been fully linked to samples. - "400": - content: { } - description: Sample group, cell group or samples to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and samples - tags: - - Cell integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}: - post: - description: |- - Create links between cells and libraries. - - Cell objects of the same group can be linked to library objects from multiple library groups, but only within the same study. - operationId: createCellGroupLibraryGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the library group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to libraries. - "204": - content: { } - description: Cell objects have been fully linked to libraries. - "400": - content: { } - description: Sample group, cell group or libraries to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and libraries - tags: - - Cell integration as Curator - /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}: - post: - description: |- - Create links between cells and preparations. - - Cell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study. - operationId: createCellGroupPreparationGroupLinkAsCurator - parameters: - - description: The ID (accession) of the cell group object - in: path - name: sourceId - required: true - schema: - type: string - - description: The ID (accession) of the preparation group object - in: path - name: targetId - required: true - schema: - type: string - responses: - "200": - content: { } - description: Cell objects have been partially linked to preparations. - "204": - content: { } - description: Cell objects have been fully linked to preparations. - "400": - content: { } - description: Sample group, cell group or preparations to the link were not found. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Create links between cells and preparations - tags: - - Cell integration as Curator -components: - schemas: - AttributeInvalidValue: - $ref: "./schemas/integration/AttributeInvalidValue.yaml" - AttributeValidationSummary: - $ref: "./schemas/integration/AttributeValidationSummary.yaml" - BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" - DataItem: - $ref: "./schemas/integration/DataItem.yaml" - DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" - GroupValidationSummary: - $ref: "./schemas/integration/GroupValidationSummary.yaml" - IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - Link: - $ref: "./schemas/integration/Link.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" - OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" - OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - Relationships: - $ref: "./schemas/integration/Relationships.yaml" - SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" - StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - StudyValidationSummary: - $ref: "./schemas/integration/StudyValidationSummary.yaml" - TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" - ValidationError: - $ref: "./schemas/integration/ValidationError.yaml" - SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" - AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" - PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" - FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" - ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" - MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" - FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" - FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" - AFile: - $ref: "./schemas/afile/AFile.yaml" - DERequest: - $ref: "./schemas/cell/DERequest.yaml" - DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" - GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" - GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" - CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" - CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/integrationUser.yaml b/openapi/v1/integrationUser.yaml deleted file mode 100644 index 0ea9ca11..00000000 --- a/openapi/v1/integrationUser.yaml +++ /dev/null @@ -1,5768 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the integrationUser APIs for ODM. These are typically used to find and retrieve study, sample and processed (signal) data and metadata for a given query. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM Integration API - version: default-released -tags: -- name: Expression integration as User -- name: Files integration as User -- name: Flow Cytometry (FACS) integration as User -- name: Library integration as User -- name: Linkage as User -- name: Omics queries as User -- name: Preparation integration as User -- name: Sample integration as User -- name: Study integration as User -- name: Variant integration as User -paths: - /api/v1/as-user/data-types: - get: - description: This endpoint is for instructional uses and can be used to get - the latest list of Data Types. - operationId: getDataTypesAsUser - responses: - "200": - content: - application/json: - schema: - items: - type: string - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Lists all available data types. - tags: - - Linkage as User - /api/v1/as-user/data-types/links: - get: - description: "This endpoint should be used for instructional needs, and can\ - \ be used in order to get the links between the Data Types." - operationId: getDataTypesLinksAsUser - parameters: - - description: Return only links with the specified data type. - in: query - name: type - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/SourceTypePair" - type: array - uniqueItems: true - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List all possible links between data types that match the specified - criteria. - tags: - - Linkage as User - /api/v1/as-user/integration/link/expression/by/library/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByLibraryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related library ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/by/preparation/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionByPreparationAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related preparation - ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve expression run-level data by querying related sample ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getExpressionGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToLibraryPairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToPreparationPairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ - \ unique runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getExpressionRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Expression integration as User - /api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry run-level data by querying related sample ID - (accession) - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getFlowCytometryGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getFlowCytometryRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Flow Cytometry (FACS) integration as User - /api/v1/as-user/integration/link/libraries/by/samples: - get: - description: |+ - Retrieve library metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibrariesBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related samples - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/by/sample/{id}: - get: - operationId: getLibraryBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Library" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve library metadata by querying related sample ID (accession) - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/group/by/study/{id}: - get: - operationId: getLibraryGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Library integration as User - /api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getLibraryLinksToSamplesAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve library-samples pairs by group id. Pagination is based on\ - \ unique libraries, not unique pairs." - tags: - - Library integration as User - /api/v1/as-user/integration/link/preparation/by/sample/{id}: - get: - operationId: getPreparationBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/Preparation" - type: array - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related sample ID (accession) - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparation/group/by/study/{id}: - get: - operationId: getPreparationGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationLinksToSamplesAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ preparations, not unique pairs." - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/preparations/by/samples: - get: - description: |+ - Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getPreparationsBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: filter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparation metadata by querying related samples - tags: - - Preparation integration as User - /api/v1/as-user/integration/link/samples/by/libraries: - get: - description: |+ - Retrieve sample metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related libraries - tags: - - Sample integration as User - /api/v1/as-user/integration/link/samples/by/preparations: - get: - description: |+ - Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related preparations - tags: - - Sample integration as User - /api/v1/as-user/integration/link/samples/by/study/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getSamplesByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata by querying related study ID (accession) - tags: - - Sample integration as User - /api/v1/as-user/integration/link/studies/by/libraries: - get: - description: |+ - Retrieve study metadata objects whose linked library metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related libraries - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/preparations: - get: - description: |+ - Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related preparations - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/samples: - get: - description: |+ - Retrieve study metadata objects whose linked sample metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesBySamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by sample metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all sample metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related samples - tags: - - Study integration as User - /api/v1/as-user/integration/link/study/by/sample/{id}: - get: - operationId: getStudyBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying sample ID (accession) - tags: - - Study integration as User - /api/v1/as-user/integration/link/studies/by/files: - get: - description: |+ - Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Attachment files (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getStudiesByFilesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by attachment file metadata (key-value metadata pair(s)). E.g. - "Species or strain"="Homo sapiens" - in: query - name: filter - schema: - type: string - - description: Search for study metadata objects via a full-text query over - all attached files metadata fields. E.g. "RNA-Seq of human dendritic cells". Queries - matching dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata objects by querying related attachment files - tags: - - Study integration as User - /api/v1/as-user/integration/link/study/by/file/{id}: - get: - operationId: getStudyByFileAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve study metadata by querying attachment file ID (accession) - tags: - - Study integration as User - /api/v1/as-user/integration/fulltext/search/studies: - post: - description: |- - Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned. - - The endpoint returns: - - a list of studies with their metadata summary; - - a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via "Configure facets" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted. - - Filter attributes for fulltext search: - - `"type": "FULL_TEXT"` - - `"match"` - - `"mode"` - - For details on two latter ones, see the request body model. Only one filter with `"type=": "FULL_TEXT"` can be passed in the request body. - - To filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed. - - It is possible to call the endpoint without any filters, then all the studies available to the user are returned. - operationId: searchStudiesByFilterAsUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/SearchStudyRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/FindObjectsResponse" - description: The request was successful. Retrieved studies and filters. - "400": - content: {} - description: Invalid request body - "401": - content: {} - description: User is not authenticated. Please supply a valid Genestack - API token in the `Genestack-API-Token` HTTP header (this token may be - obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - summary: Find and retrieve studies by full-text or facet query - tags: - - Study integration as User - x-codegen-request-body-name: request - /api/v1/as-user/integration/link/variant/by/sample/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantBySampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant run-level data by querying related sample ID (accession) - tags: - - Variant integration as User - /api/v1/as-user/integration/link/variant/group/by/study/{id}: - get: - description: |+ - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - operationId: getVariantGroupsByStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group metadata by querying study ID (accession) - tags: - - Variant integration as User - /api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - operationId: getVariantRunToSamplePairsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ - \ runs, not unique pairs." - tags: - - Variant integration as User - /api/v1/as-user/links: - get: - description: Please make sure that this endpoint should be used only for getting - all links to a specific object. In case you specify both firstId and secondId - an expected answer would be true for existing links and false for no link - between the objects. - operationId: getLinksByParamsAsUser - parameters: - - description: Object ID (accession) (e.g. accession of study) - in: query - name: firstId - required: true - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: firstType - schema: - type: string - - description: Object ID (accession) (e.g. accession of study) - in: query - name: secondId - schema: - type: string - - description: Type of the object (e.g. study) - in: query - name: secondType - schema: - type: string - - description: Param says to skip that many links before beginning to return - links. - in: query - name: offset - schema: - default: 0 - format: int32 - type: integer - - description: Param says to limit the count of returned links. - in: query - name: limit - schema: - default: 1000 - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Finds existing links matching the specified criteria. - tags: - - Linkage as User - /api/v1/as-user/links/get-batch: - post: - description: Please make sure to use that endpoint for batch calls only. You - are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same - time. Please always specify firstType. - operationId: getLinksByIdsAsUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/BatchOfIds" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: Entities cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: "Finds existing links by passing many IDs. \nPagination goes through\ - \ all links matched the criteria." - tags: - - Linkage as User - x-codegen-request-body-name: request - /api/v1/as-user/omics/cells: - get: - description: |- - Retrieve cell objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsAsUser - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: | - Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: | - Filter by library metadata (key-value metadata pair(s)). E.g. `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: | - Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: | - Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: | - Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to cell expression data and originally\ - \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the cell - \ measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`.\n - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve Cell objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/cells/expression/data: - get: - description: |- - Retrieve cell expression objects by searching across multiple metadata types. - - ## Conditions - It is possible to supply conditions for: - 1. Parent studies (full-text or metadata key-value pair) - 2. Samples (full-text or metadata key-value pair) - 3. Libraries (full-text or metadata key-value pair) - 4. Preparations (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - operationId: omicsSearchCellsExpressionDataAsUser - parameters: - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - Search for cells by their metadata attributes. The following attributes are supported: - 1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes. - 2. Integers: `nCounts` - 3. Floats: `percentMito` - 4. Float coordinates: `UMAP`, `PCA`, `t-SNE`. - 5. All other attributes are considered to be custom and stored as string data type. - - To use filters for cell metadata objects use the following query types: - 1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace: `cellType=T_cell`, `batch="PBMC batch 01"` - quote values that include spaces, `nCounts=3000`, `custom_attribute="disease"` - custom attribute with string data type. - 2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`. - 3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`. - 4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ "B cell"`. - 5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: - * `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search. - * `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8. - * `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2. - * `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000. - * `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query. - in: query - name: cellQuery - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve cell expression objects by searching across multiple metadata types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/data: - get: - description: "Retrieve any data objects whose linked data matches all supplied\ - \ conditions.This endpoint does not support search by expression linked to Cell\ - \ group. Use /omics/cells/expression/data endpoint for search by Cell expression.\ - \n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ - It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ - \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ - 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ - \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ - \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ - \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ - \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ - \ backslash characters in the query need to be escaped with a backslash (`\\\ - `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ - \ an operator. The `=` operator matches literal values/string. The `!=` operator\ - \ matches anything except the literal value/string. The `<` or `>` operators\ - \ match numerical results that are less or greater than the supplied value.\ - \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ - \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ - \ The set of valid keys depends on the specific query type, and is documented\ - \ in the query parameter summary. The values can be simple non-whitespace\ - \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ - \ the value may be be a comma-delimited list of string values. Others require\ - \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter\ - \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ - \ to separate out the terms and operators. Parentheses `( )` can be used for\ - \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ - \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ - \ of an omics data file are associated via their CHAIN_ID metadata value.\ - \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ - \ version number or specific omics data file accessions to include them in\ - \ the query. If nothing is supplied to the useVersions parameter then only\ - \ the active version (which is usually the last one imported) is queried.\ - \ This acts as a filter before the rest of the query is carried out.\n\nExample\ - \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ - useVersions=v2 (query the second version. If there is no second version then\ - \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ - \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ - \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ - \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ - \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ - \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ - \ reasons this endpoint returns results in \"pages\" of limited size together\ - \ with a `cursor` tag. To retrieve the next page of results please supply\ - \ this `cursor` tag to resume the query from your previous result and get\ - \ the next page. To return all results iterate through pages using cursor \ - \ values until the `resultsExhausted` response field is true.\n\n" - operationId: omicsSearchExpressionDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve data objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchExpressionGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/expression/streamed-data: - get: - description: "Stream data from a given group for a tabular file that matches\ - \ a sample/library/preparations query/filter. If no query/filters are supplied\ - \ all expression data is returned. If a metadata filter is specified, this\ - \ endpoint will only return expression data that is associated with a sample\ - \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ - \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ - \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ - \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ - \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ - \ that include whitespace. Speech marks and backslash characters in the query\ - \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ - \ filters are key-value pairs joined by an operator. The `=` operator matches\ - \ literal values/string. The `!=` operator matches anything except the literal\ - \ value/string. The `<` or `>` operators match numerical results that are\ - \ less or greater than the supplied value. Strings containing whitespace need\ - \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ - \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ - \ using white-space to separate out the terms and operators. Parentheses `(\ - \ )` can be used for complex expressions.\n \n\n## Error Handling\n In case\ - \ of unexpected internal error during data retrieval, the last line of the\ - \ body will contain an error message, prefixed by the `#` character \n\n" - operationId: omicsSearchStreamedExpressionDataAsUser - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g.`"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Deprecated; use `exQuery` parameter instead. Filters results\ - \ by the feature column (e.g., Gene ID). The feature parameter value must\ - \ match the name of the identifier in the GCT file (under the NAME column).\ - \ Example: `ENSG00000077044`" - explode: true - in: query - name: featureList - schema: - items: - type: string - example: KRAS - type: array - style: form - - description: Accession of the expression group object (GCT) - in: query - name: groupAccession - required: true - schema: - type: string - - description: The number of digits after the decimal point for floating-point - values. The final value is rounded up. Must be non-negative. The default - is 4. - in: query - name: roundDigits - schema: - default: 4 - format: int32 - type: integer - responses: - "200": - content: - text/csv: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Expression data. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Stream data from a given tabular file - tags: - - Omics queries as User - /api/v1/as-user/omics/flow-cytometry/data: - get: - description: |+ - Retrieve flow cytometry data objects whose linked data matches all supplied conditions. - - Note: A flow cytometry data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve flow cytometry data objects by searching across multiple data - types - tags: - - Omics queries as User - /api/v1/as-user/omics/flow-cytometry/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchFlowCytometryGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/samples: - get: - description: |+ - Retrieve sample metadata objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchSamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve sample metadata objects by searching across multiple data - types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/data: - get: - description: |+ - Retrieve variant data objects whose linked data matches all supplied conditions. - - Note: A variant data query must be supplied. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked expression objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantDataAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve variant data objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/group: - get: - description: |+ - Retrieve group objects whose linked data matches all supplied conditions. - - ## Conditions - It is possible to supply conditions for: - - 1. Samples (full-text or metadata key-value pair) - 2. Parent studies (full-text or metadata key-value pair) - 3. Linked variant objects (list of data key-value pairs) - 4. Linked flow cytometry objects (list of data key-value pairs) - 5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Data queries - Data queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values. - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true. - - operationId: omicsSearchVariantGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: | - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - in: query - name: studyFilter - schema: - type: string - - description: Search for objects via a full-text query over all study metadata - fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: studyQuery - schema: - type: string - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: libraryFilter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: libraryQuery - schema: - type: string - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: preparationFilter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: preparationQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ - \ `\"Variant Source\"=dbSNP`." - in: query - name: vxFilter - schema: - type: string - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ - \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ - \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ - \ to quote queries that include whitespace. \n2. It is possible to specify\ - \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ - \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ - \ all rows where the feature attribute Name_2 values are greater than or\ - \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ - \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ - \ Use substring search to get the records where the attribute field contains\ - \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ - \ first column for each original data file is identified as feature accession\ - \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ - \ by such feature accession would significantly outperform more complex\ - \ queries by combining the other feature attributes. To enable such a search,\ - \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n\ - * `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A\ - \ AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example\ - \ above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`:\ - \ Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Filter by expression metadata (key-value metadata pair(s)).\ - \ E.g. `\"Genome Version\"=hg19-BROAD`." - in: query - name: exFilter - schema: - type: string - - description: "Search for objects linked to flow cytometry data via data query\ - \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ - CD45+, live\"` `MinValue=3.5`" - in: query - name: fxQuery - schema: - type: string - - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ - \ E.g. `Organ=blood`." - in: query - name: fxFilter - schema: - type: string - - description: "Unique identifier (accession) of Reference Genome object." - in: query - name: referenceGenomeId - schema: - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/OmicsResponse" - description: Omics query result. - "400": - content: {} - description: Invalid data in request. See error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve group objects by searching across multiple data types - tags: - - Omics queries as User - /api/v1/as-user/omics/variant/streamed-data: - get: - description: |+ - Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute. - - ## Conditions - It is possible to supply conditions for Samples (full-text or metadata key-value pair) - - ## Metadata full-text queries - Single words can be supplied as is; otherwise, use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - operationId: omicsSearchStreamedVariantDataAsUser - parameters: - - description: | - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - in: query - name: sampleFilter - schema: - type: string - - description: Search for objects via a full-text query over all sample metadata - fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: sampleQuery - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: "Search for objects linked to expression data and originally\ - \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ - \ value>=1.50`\n For the case when the original data is represented by multiple\ - \ attributes per feature scenarios, extended filtering syntax is as follows:\ - \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ - \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ - \ queries, single words can be supplied as is; otherwise, use speech marks\ - \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ - \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ - \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ - \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ - \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ - \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ - \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ - \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ - \ the feature attribute Name_3 values lie within the interval between -3\ - \ and 3. \n4. Use substring search to get the records where the attribute\ - \ field contains the provided substring: `features.attribute1 =~ \"some\ - \ text\"`. \n5. The first column for each original data file is identified\ - \ as feature accession (typically, it contains gene or protein names, accession\ - \ IDs, etc.). Searching by such feature accession would significantly outperform\ - \ more complex queries by combining the other feature attributes. To enable\ - \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ - \ \nThe `value` keyword can be used to select rows where the sample (library\ - \ or preparation) measurements has values from a certain range. Examples:\ - \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ - \ multiple measurements for a single item, such as a sample (library or\ - \ preparation), use the measurement name to specify the exact column type,\ - \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ - \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ - \ rows where the measurement attribute intensity is not equal 2 and is not\ - \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ - \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ - \ Selects all rows where the measurement attribute 'FC' values lie within\ - \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ - \ been deprecated and should be replaced with the aforementioned comparisons.\n\ - \ \nCombine multiple filters for different feature attributes and measurements\ - \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ - * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ - \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ - \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ - \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ - \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ - \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ - \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ - \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ - \ B or minimal possible measurement value is 1.0." - in: query - name: exQuery - schema: - type: string - - description: "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, - as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n - * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` - or `filter != pass`.\n - * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent - to `id = rs3214 or id = rg1234`.\n - * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome - `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be - separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n - * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. - By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n - * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, - we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries." - in: query - name: vxQuery - schema: - type: string - - description: Accession of the variant group object (VCF) - in: query - name: groupAccession - required: true - schema: - type: string - responses: - "200": - content: - text/tab-separated-values: - schema: - $ref: "#/components/schemas/StreamingOutput" - description: Stream of retrieved Variant data. - "400": - content: { } - description: Invalid data in request. See error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Stream data from a given VCF file - tags: - - Omics queries as User - /api/v1/as-user/omics/cells/analytics/cell-ratio: - post: - operationId: cellRatioAsUser - summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data." - tags: - - "[BETA] Analytics omics queries as User" - description: |+ - This endpoint calculates cell ratio statistics based on single-cell metadata. - - It allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster) - relative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata. - - `countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters. - In case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter. - - The endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/CRRequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/CRResponse" - description: Cell ratio result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/omics/cells/analytics/differential-expression: - post: - operationId: differentialExpressionAsUser - summary: "[BETA] Perform differential gene expression analytics between case and control cell groups" - tags: - - "[BETA] Analytics omics queries as User" - # The descriptions below are also duplicated in the schema description, make sure to keep them in sync. - description: |+ - This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data. - - Consult `/omics` search endpoints to find description of parameters within the cell groups. - The response includes per-gene metrics that characterize expression differences between the two groups: - - `Gene name` - gene identifier. - - `Case cell count` - number of cells expressing the gene in the case group. - - `Control cell count` - number of cells expressing the gene in the control group. - - `Average expression (case)` - mean expression level across case cells. - - `Average expression (control)` - mean expression level across control cells. - - `Expression difference` - numerical difference between average expressions. - - `Fold change` - ratio of average expressions between case and control groups. - - `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups. - - `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - - Results are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/DERequest" - required: true - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DEResponse" - description: Differential expression result - "400": - content: { } - description: Entities cannot be retrieved. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/omics/cells/analytics/gene-summary: - post: - operationId: geneSummaryAsUser - summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data." - tags: - - "[BETA] Analytics omics queries as User" - description: |+ - This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets. - It aggregates and summarizes expression data for each gene to help assess variability, distribution, - and intensity of expression within the population of cells. - - The computed metrics include: - - `Gene name` - gene identifier. - - `Cell count` - number of cells with measurable expression for each gene. - - `Mean expression value` - - `Median expression value` - - `Quantiles` - configurable expression percentiles. - - `Histogram (density)` - binned distribution of expression levels for visualization. - - `Standard deviation` - dispersion of expression values. - - `Minimum and maximum values` - range of expression across cells. - - Results are sorted by gene name. - - Request and response parameters are subject to change as this feature is in BETA. - requestBody: - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/GSRequest" - responses: - "200": - description: Gene summary result - content: - application/json: - schema: - $ref: "#/components/schemas/GSResponse" - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |+ - User is not authenticated. Please supply a valid Access Token in the `Authorization` - HTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token` - header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: |+ - An internal server error occurred. This indicates an unexpected - failure in the Genestack system, please file a bug report to support@genestack.com, - including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - /api/v1/as-user/integration/link/files/by/study/{id}: - get: - operationId: getFilesByStudyAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response. - in: query - name: includeContents - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - text/tab-separated-values: - schema: - items: - $ref: "#/components/schemas/AFile" - type: array - description: The request was successful. The returned value is a list of objects. - "400": - content: { } - description: Invalid data in the request. See the error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: Object with provided accession could not be found in ODM. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Retrieve file's metadata by study ID - tags: - - Files integration as User -components: - schemas: - BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" - DataItem: - $ref: "./schemas/integration/DataItem.yaml" - DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" - IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" - OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" - OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - Relationships: - $ref: "./schemas/integration/Relationships.yaml" - SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" - StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" - AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" - PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" - FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" - ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" - StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" - FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" - FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" - AFile: - $ref: "./schemas/afile/AFile.yaml" - DERequest: - $ref: "./schemas/cell/DERequest.yaml" - DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" - GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" - GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" - CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" - CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/job.yaml b/openapi/v1/job.yaml deleted file mode 100644 index ab6538e3..00000000 --- a/openapi/v1/job.yaml +++ /dev/null @@ -1,863 +0,0 @@ -openapi: 3.1.0 -info: - description: | - - These API endpoints serve to start, control, monitor and retrieve results for a set of available Genestack jobs. - - A job is an arbitrary process that, once started, runs asynchronously in the background. - Upon starting a job the user receives a job execution identifier (`jobExecId`) that they can use to control and monitor the job and to retrieve the job result (output). - - #### Basic workflow: - - Start a job (POST endpoints) to return a `jobExecId` - Periodically poll the `GET /{jobExecId}/output` endpoint to get the job status for a given `jobExecId` - When the status is `COMPLETED` or `FAILED`, queries to the `GET /{jobExecId}/output` endpoint will also contain any output (result/errors) - - To retrieve more information about a job, such as start time etc., use the `GET /{jobExecId}/info` endpoint. - - #### Available statuses: - - - `STARTING`: initial job status - - `RUNNING`: the job has successfully started and is running - - `COMPLETED` (terminal): the job has completed and the result is available in the `GET /{jobExecId}/output` response - - `FAILED` (terminal): the job has failed, you can extract errors from the `GET /{jobExecId}/output` response - - `STOPPING`: a stop request has been initiated, the job is in the process of stopping - - `STOPPED` (terminal): the job has been stopped (it may be able to be restarted) - - `ABANDONED` (terminal): the job has been abandoned for an unknown reason, please contact your system administrator. - - `UNKNOWN`: the job status is unknown, please contact your system administrator. - title: Job API - version: default-released -tags: -- name: Data import jobs -- name: Data import via direct file upload -- name: Job operations -paths: - /api/v1/jobs/import/study: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportStudy - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import study metadata from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/samples: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportSamples - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of sample metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/samples/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportSamplesMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of sample metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/libraries: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportLibraries - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of library metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/libraries/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportLibrariesMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of library metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/preparations: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportPreparations - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportMetadataRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of preparation metadata objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/preparations/multipart: - post: - description: |2 - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportPreparationsMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of preparation metadata objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/cells: - post: - description: |2 - - The endpoint initiates a job to import cell data and creates a Cell Group to manage it. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - - Embedding constraints: - - * UMAP/t-SNE - - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**. - - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid. - - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored. - - * PCA - - Allowed number of components per cell: **0** (absent) or **≥ 2**. - - If exactly **1** PCA component is provided, the request is invalid. - - At most **100** PCA components are stored; components beyond 100 are ignored. - - Notes: - - “Dimensions/components” refer to the length of the embedding vector for each cell. - - Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**. - operationId: startImportCells - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportCellsRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a group of cell data objects from a TSV file - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/cells/multipart: - post: - description: |2 - - The endpoint initiates a job to import cell data and creates a Cell Group to manage it. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - - Embedding constraints: - - * UMAP/t-SNE - - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**. - - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid. - - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored. - - * PCA - - Allowed number of components per cell: **0** (absent) or **≥ 2**. - - If exactly **1** PCA component is provided, the request is invalid. - - At most **100** PCA components are stored; components beyond 100 are ignored. - - Notes: - - “Dimensions/components” refer to the length of the embedding vector for each cell. - - Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**. - operationId: startImportCellsMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportCellsFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import a group of cell data objects from a TSV file via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/expression: - post: - description: |- - ## Data - This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data. - - ## Metadata - It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file. - ## Metadata file format - * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`) - * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed - * Header: the first line is treated as table header that contains attribute names - * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the "pipe" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice. - * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data. - operationId: startImportExpression - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportExpressionSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import any tabular data from TSV or GCT files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/expression/multipart: - post: - description: |- - ## Data - This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data. - - ## Metadata - It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file. - ## Metadata file format - * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`) - * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed - * Header: the first line is treated as table header that contains attribute names - * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the "pipe" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice. - * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data. - operationId: startImportExpressionMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import any tabular data from TSV or GCT files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/variant: - post: - description: "\nWhen job finishes successfully the following **result** object\ - \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ - groupAccession\": \"GSF1234567\"\n}\n```\n " - operationId: startImportVariant - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import variation data and metadata from VCF and TSV files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/variant/multipart: - post: - description: "\nWhen job finishes successfully the following **result** object\ - \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ - groupAccession\": \"GSF1234567\"\n}\n```\n " - operationId: startImportVariantMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import variation data and metadata from VCF and TSV files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/flow-cytometry: - post: - description: |- - This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format. - Consult the user guide for a comprehensive understanding of the file content requirements. - For flow cytometry data in FCS format use expression endpoint. - - When job finishes successfully the following **result** object - can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportFlowCytometry - parameters: - - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to\ - \ load this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportSignalRunRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import flow-cytometry data and metadata from FACS and TSV files - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/flow-cytometry/multipart: - post: - description: |- - This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format. - Consult the user guide for a comprehensive understanding of the file content requirements. - For flow cytometry data in FCS format use expression endpoint. - - When job finishes successfully the following **result** object - can be obtained using `GET /job/{id}/output` request: - - ``` - { - "groupAccession": "GSF1234567" - } - ``` - operationId: startImportFlowCytometryMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/import/file: - post: - description: |- - In order to import a file as an attachment to a study, please fill in the following fields: - - * `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link. - * `dataLink` - a link to a file to import as an attachment. - The file will be associated with a study and will be searchable by its name and metadata. - * `metadataLink` - an optional URL of a metadata file to be used as the original metadata - for the created objects. The file must contain a single record describing the uploaded attachment. - * `studyAccession` - an accession of a study the file will be associated with. - * `dataClass` - file data class with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics', - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "accession": "GSF1234567" - } - ``` - operationId: startImportAFile - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/ImportAFileRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import file as an attachment - tags: - - Data import jobs - x-codegen-request-body-name: body - /api/v1/jobs/import/file/multipart: - post: - description: |- - In order to import a file as an attachment to a study, please fill in the following fields: - - * `data` - a file to import as an attachment. - The file will be associated with a study and will be searchable by its name and metadata. - * `metadata` - an optional metadata file to be used as the original metadata - for the created objects. The file must contain a single record describing the uploaded attachment. - * `studyAccession` - an accession of a study the file will be associated with. - * `dataClass` - file data class with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics', - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`. - - When job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request: - - ``` - { - "accession": "GSF1234567" - } - ``` - operationId: startImportAFileMultipart - requestBody: - content: - multipart/form-data: - schema: - $ref: "#/components/schemas/ImportAFileFromMultipartRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - summary: Import file as an attachment via multipart/form-data upload - tags: - - Data import via direct file upload - x-codegen-request-body-name: body - /api/v1/jobs/{jobExecId}/info: - get: - operationId: info - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: get information about one particular job execution - tags: - - Job operations - /api/v1/jobs/{jobExecId}/output: - get: - operationId: output - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Output" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: retrieve job output (result) - tags: - - Job operations - /api/v1/jobs/{jobExecId}/restart: - put: - operationId: restart - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: restart stopped (failed) job - tags: - - Job operations - /api/v1/jobs/{jobExecId}/stop: - put: - operationId: stop - parameters: - - in: path - name: jobExecId - required: true - schema: - format: int64 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Info" - description: successful operation - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: stop running job - tags: - - Job operations -components: - parameters: - AllowDuplicates: - description: "Load duplicate data: the data from the link(s) has already been\ - \ previously loaded into ODM, and for **testing purposes**, you need to load\ - \ this data again." - in: query - name: allow_dups - schema: - default: false - type: boolean - schemas: - ExceptionTypeAndMessage: - $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" - ImportCellsRequest: - $ref: "./schemas/job/ImportCellsRequest.yaml" - ImportCellsFromMultipartRequest: - $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" - ImportMetadataRequest: - $ref: "./schemas/job/ImportMetadataRequest.yaml" - ImportMetadataFromMultipartRequest: - $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" - ImportSignalRunRequest: - $ref: "./schemas/job/ImportSignalRunRequest.yaml" - ImportSignalRunFomMultipartRequest: - $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" - ImportExpressionSignalRunRequest: - $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" - ImportExpressionSignalRunFromMultipartRequest: - $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" - ImportAFileRequest: - $ref: "./schemas/job/ImportAFileRequest.yaml" - ImportAFileFromMultipartRequest: - $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" - Info: - $ref: "./schemas/job/Info.yaml" - JobRuntimeError: - $ref: "./schemas/job/JobRuntimeError.yaml" - Output: - $ref: "./schemas/job/Output.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/libraryCurator.yaml b/openapi/v1/libraryCurator.yaml deleted file mode 100644 index 832d2ccd..00000000 --- a/openapi/v1/libraryCurator.yaml +++ /dev/null @@ -1,470 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the libraryCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Library SPoT as Curator -paths: - /api/v1/as-curator/libraries: - get: - description: |- - Retrieve library metadata objects by searching/listing library metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchLibrariesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for library metadata objects - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/by/group/{id}: - get: - operationId: getLibrariesByGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve libraries related to the given group - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/{id}: - get: - operationId: getLibraryAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateLibraryAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a library object - tags: - - Library SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/libraries/{id}/versions: - get: - operationId: getLibraryVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Library SPoT as Curator - /api/v1/as-curator/libraries/{id}/versions/{version}: - get: - operationId: getLibraryByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/libraryUser.yaml b/openapi/v1/libraryUser.yaml deleted file mode 100644 index d5ed6482..00000000 --- a/openapi/v1/libraryUser.yaml +++ /dev/null @@ -1,413 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the libraryUser API endpoints for ODM. These are typically used to find and retrieve library metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Library SPoT as User -paths: - /api/v1/as-user/libraries: - get: - description: |- - Retrieve library metadata objects by searching/listing library metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchLibrariesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by library metadata (key-value metadata pair(s)). E.g. - `"Library Type"=RNA-Seq-1` - in: query - name: filter - schema: - type: string - - description: Search for library objects via a full-text query over all library - metadata fields. E.g. `"illumina HiSeq500"`. Queries matching dictionary - terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for library metadata objects - tags: - - Library SPoT as User - /api/v1/as-user/libraries/by/group/{id}: - get: - operationId: getLibrariesByGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve libraries related to the given group - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}: - get: - operationId: getLibraryAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}/versions: - get: - operationId: getLibraryVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Library SPoT as User - /api/v1/as-user/libraries/{id}/versions/{version}: - get: - operationId: getLibraryByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Library" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single library object by ID (accession) - tags: - - Library SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - Library: - $ref: "./schemas/library/Library.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/manageData.yaml b/openapi/v1/manageData.yaml deleted file mode 100644 index cc77f834..00000000 --- a/openapi/v1/manageData.yaml +++ /dev/null @@ -1,189 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the manageData APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Manage Data -paths: - /api/v1/manage-data/detached-objects: - get: - description: |+ - Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'. - Study is considered as detached object itself in case there are no links to objects at a lower level. - Data with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter. - The detached objects are sorted according to their `detachedObjectType` and `genestack:accession`. - Specific ordering can be observed in the list of supported detached types found below. - Pagination of the results can be conveniently managed using the `cursor` and `limit` parameters. - Supported types of detached objects (listed in the order of retrieval) include: - * `STUDY` - * `SAMPLE_GROUP` - * `LIBRARY_GROUP` - * `PREPARATION_GROUP` - * `CELL_GROUP` - * `TABULAR_DATA` - * `GENE_VARIANT` - * `FLOW_CYTOMETRY` - - operationId: getDetachedObjects - parameters: - - description: Filter by detached object type. Multiple values can be used to - filter the data. - explode: true - in: query - name: detachedObjectType - schema: - items: - type: string - type: array - style: form - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: limit - schema: - format: int32 - type: integer - - description: |- - This parameter enables retrieval of objects starting from a specific point. - Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string. - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/DetachedCollection" - description: Retrieved detached data. - "400": - content: {} - description: Detached data cannot be retrieved due to Bad Request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to call method. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of detached objects - tags: - - Manage Data - /api/v1/manage-data/data: - delete: - description: |- - The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint: - * `STUDY` - * `SAMPLE_GROUP` - * `SAMPLE_OBJECT` - * `LIBRARY_GROUP` - * `PREPARATION_GROUP` - * `CELL_GROUP` - * `TABULAR_DATA` - * `GENE_VARIANT` - * `FLOW_CYTOMETRY` - * `REFERENCE_GENOME` - * `FILE` - - Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules: - * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed. - * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group. - * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well. - * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`. - * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group). - * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM. - * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups. - * If you delete `FILE`, the file will be removed from ODM. - operationId: deleteData - parameters: - - description: Accessions files to be deleted. - explode: false - in: query - name: accessions - schema: - items: - type: string - type: array - style: form - responses: - "202": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/ManagedObject" - type: array - description: The deletion of the following files and all linked data has - started. - "400": - content: {} - description: Deletion could not be performed due to Bad Request. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to call method or the file is not meant to be deleted. - "404": - content: {} - description: Some of the provided accessions could not be found in ODM. - Deletion will not be preformed. Please review your list and repeat the - attempt. - "406": - content: {} - description: Some of the provided accessions do not belong to the supported - object types. Deletion will not be performed. Please review your list - and repeat the attempt. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Delete objects from ODM - tags: - - Manage Data -components: - schemas: - DetachedCollection: - $ref: "./schemas/manage-data/DetachedCollection.yaml" - DetachedObject: - $ref: "./schemas/manage-data/DetachedObject.yaml" - ManagedObject: - $ref: "./schemas/manage-data/ManagedObject.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml new file mode 100644 index 00000000..24fb56fe --- /dev/null +++ b/openapi/v1/odm.yaml @@ -0,0 +1,24101 @@ +--- +openapi: "3.1.0" +info: + description: "This swagger page describes the variantUser API endpoints for ODM.\ + \ These are typically used to find and retrieve variant data and metadata.\n\n\ + Before carrying out any API calls you will need an API token. API tokens can be\ + \ obtained under your profile within the Genestack software.\n\nTo try out calls\ + \ in this swagger page:\n\n1. Click the 'Authorize' button below to enter your\ + \ API token\n2. Scroll to the 'Parameters' section for the method you wish to\ + \ try out and click the 'Try it out' button\n3. Enter parameter values that you\ + \ wish to try\n4. Scroll to the bottom of the Parameters section and click the\ + \ 'Execute' bar that appears\n\n\n The server response will be in the section\ + \ that follows." + title: "ODM API" + version: "default-released" +tags: +- name: "Cells as Curator" +- name: "Cells as User" +- name: "Expression SPoT as Curator" +- name: "Expression SPoT as User" +- name: "Files as Curator" +- name: "Files as User" +- name: "Flow Cytometry SPoT as Curator" +- name: "Flow Cytometry SPoT as User" +- name: "Cell integration as Curator" +- name: "Expression integration as Curator" +- name: "Files integration as Curator" +- name: "Flow Cytometry (FACS) integration as Curator" +- name: "Library integration as Curator" +- name: "Linkage as Curator" +- name: "Metadata versioning as Curator" +- name: "Omics queries as Curator" +- name: "Preparation integration as Curator" +- name: "Sample integration as Curator" +- name: "Study integration as Curator" +- name: "Validation summary as Curator" +- name: "Variant integration as Curator" +- name: "Expression integration as User" +- name: "Files integration as User" +- name: "Flow Cytometry (FACS) integration as User" +- name: "Library integration as User" +- name: "Linkage as User" +- name: "Omics queries as User" +- name: "Preparation integration as User" +- name: "Sample integration as User" +- name: "Study integration as User" +- name: "Variant integration as User" +- name: "Data import jobs" +- name: "Data import via direct file upload" +- name: "Job operations" +- name: "Library SPoT as Curator" +- name: "Library SPoT as User" +- name: "Manage Data" +- name: "Preparation SPoT as Curator" +- name: "Preparation SPoT as User" +- name: "Xrefset queries" +- name: "Reference genome" +- name: "Sample SPoT as Curator" +- name: "Sample SPoT as User" +- name: "Groups" +- name: "Users" +- name: "Study SPoT as Curator" +- name: "Study SPoT as User" +- name: "Tasks API" +- name: "Variant SPoT as Curator" +- name: "Variant SPoT as User" +paths: + /api/v1/as-curator/cells/{id}: + get: + operationId: "getCellByIdAsCurator" + parameters: + - description: "Unique cell identifier. Consists of a cell group accession and\ + \ a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Cell" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided ID could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a cell by ID" + tags: + - "Cells as Curator" + /api/v1/as-curator/cells/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve\ + \ the next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page.\nIf there are no more results\ + \ you will just retrieve an empty result.\n" + operationId: "getCellsByGroupAsCurator" + parameters: + - description: "Unique identifier (accession) of the cell group." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 10000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see Paging above). Cell\ + \ ID is currently used as a cursor." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CellListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Cell data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cells from a given group" + tags: + - "Cells as Curator" + /api/v1/as-user/cells/{id}: + get: + operationId: "getCellByIdAsUser" + parameters: + - description: "Unique cell identifier. Consists of a cell group accession and\ + \ a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Cell" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided ID could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a cell by ID" + tags: + - "Cells as User" + /api/v1/as-user/cells/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve\ + \ the next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page.\nIf there are no more results\ + \ you will just retrieve an empty result.\n" + operationId: "getCellsByGroupAsUser" + parameters: + - description: "Unique identifier (accession) of the cell group." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 10000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see Paging above). Cell\ + \ ID is currently used as a cursor." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CellListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Cell data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cells from a given group" + tags: + - "Cells as User" + /api/v1/as-curator/expressions: + get: + description: "Retrieve all expression data and metadata objects that match a\ + \ query.\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getExpressionDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that corresponds to the column and\ + \ is used to link data from the same run to a sample, library or preparation.\ + \ Multiple values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample, library\ + \ or preparation is related. Multiple values can be provided as a list to\ + \ retrieve data from multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minExpressionLevel" + schema: + format: "double" + type: "number" + - description: "List of features to return. These features must match exactly\ + \ the probe IDs in the GCT file. Example: `1552269_at`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionResponse" + description: "Retrieved Expression data." + "400": + content: {} + description: "Expression data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple expression data and metadata objects" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchExpressionGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group/by/run/{id}: + get: + operationId: "getExpressionGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/group/{id}: + get: + operationId: "getExpressionGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression group by ID (groupId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchExpressionRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/{id}: + get: + operationId: "getExpressionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by ID (itemId)" + tags: + - "Expression SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateExpressionRunAsCurator" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update metadata object by expression object run ID (runId)" + tags: + - "Expression SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/expressions/{id}/versions: + get: + operationId: "getExpressionVersionsAsCurator" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of expression object versions by run ID (runId)" + tags: + - "Expression SPoT as Curator" + /api/v1/as-curator/expressions/{id}/versions/{version}: + get: + operationId: "getExpressionByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the expression object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by run ID and its version" + tags: + - "Expression SPoT as Curator" + /api/v1/as-user/expressions: + get: + description: "Retrieve all expression data and metadata objects that match a\ + \ query.\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getExpressionDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that corresponds to the column and\ + \ is used to link data from the same run to a sample, library or preparation.\ + \ Multiple values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample, library\ + \ or preparation is related. Multiple values can be provided as a list to\ + \ retrieve data from multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minExpressionLevel" + schema: + format: "double" + type: "number" + - description: "List of features to return. These features must match exactly\ + \ the probe IDs in the GCT file. Example: `1552269_at`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionResponse" + description: "Retrieved Expression data." + "400": + content: {} + description: "Expression data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple expression data and metadata objects" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchExpressionGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Normalization Method\"=TPM`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for expression objects via a full text query over all\ + \ expression metadata. E.g. `TPM`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group/by/run/{id}: + get: + operationId: "getExpressionGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/group/{id}: + get: + operationId: "getExpressionGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression group by ID (groupId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchExpressionRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}: + get: + operationId: "getExpressionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ExpressionItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by ID (itemId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}/versions: + get: + operationId: "getExpressionVersionsAsUser" + parameters: + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of expression object versions by run ID (runId)" + tags: + - "Expression SPoT as User" + /api/v1/as-user/expressions/{id}/versions/{version}: + get: + operationId: "getExpressionByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Expression object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single expression object by run ID and its version" + tags: + - "Expression SPoT as User" + /api/v1/as-curator/files/{id}/download: + head: + description: "Check if a file exists by its accession.\n\nThis endpoint can\ + \ be used to check if a file exists and accessible before downloading it.\n" + operationId: "headFileAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + description: "File exists. Additional metadata is provided in the response\ + \ headers." + "400": + content: {} + description: "File cannot be downloaded." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to" + security: + - Access-token: [] + - Genestack-API-Token: [] + tags: + - "Files as Curator" + get: + description: "Download a file by its accession.\n" + operationId: "getFileAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - name: "Range" + in: "header" + required: false + schema: + type: "string" + example: "bytes=0-" + description: "Request a specific range of bytes to support partial downloads.\n\ + Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several\n\ + ranges is not supported.\n" + responses: + "200": + description: "File downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "206": + description: "Partial content downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "400": + content: {} + description: "File cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a file by ID (accession)" + tags: + - "Files as Curator" + /api/v1/as-curator/files/{id}: + get: + operationId: "getFileMetadataByIdAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/AFile" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by ID (accession)" + tags: + - "Files as Curator" + /api/v1/as-curator/files: + get: + operationId: "getFilesMetadataAsCurator" + description: "## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the `pageOffset` query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages by increasing\ + \ the offset in multiples of limit (e.g., `offset = n * limit`), until all\ + \ results have been retrieved. The total number of pages can be calculated\ + \ by dividing the total number of results by the limit.\n\n## List operation\n\ + \nThis endpoint can be called without any query parameters. When called this\ + \ way, it returns a list of all files metadata objects." + parameters: + - in: "query" + name: "filter" + description: "Filter by files metadata (key-value metadata pair(s))." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for files via a full-text query over all file metadata." + schema: + type: "string" + - in: "query" + name: "includeContents" + description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + required: false + schema: + default: false + type: "boolean" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by its fields" + tags: + - "Files as Curator" + /api/v1/as-user/files/{id}/download: + head: + description: "Check if a file exists by its accession.\n\nThis endpoint can\ + \ be used to check if a file exists and accessible before downloading it.\n" + operationId: "headFileAsUser" + summary: "Check if a file exists by ID (accession)." + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + description: "File exists. Additional metadata is provided in the response\ + \ headers." + "400": + content: {} + description: "File cannot be downloaded." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to" + security: + - Access-token: [] + - Genestack-API-Token: [] + tags: + - "Files as User" + get: + description: "Download a file by its accession.\n" + operationId: "getFileAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - name: "Range" + in: "header" + required: false + schema: + type: "string" + example: "bytes=0-" + description: "Request a specific range of bytes to support partial downloads.\n\ + Example: `bytes=0-1024` to download the first 1024 bytes. Supplying several\n\ + ranges is not supported.\n" + responses: + "200": + description: "File downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "206": + description: "Partial content downloaded successfully" + content: + application/octet-stream: + schema: + type: "string" + format: "binary" + "400": + content: {} + description: "File cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "406": + content: {} + description: "File cannot be downloaded." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a file by ID (accession)" + tags: + - "Files as User" + /api/v1/as-user/files/{id}: + get: + operationId: "getFileMetadataByIdAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/AFile" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by ID (accession)" + tags: + - "Files as User" + /api/v1/as-user/files: + get: + operationId: "getFilesMetadataAsUser" + description: "## Metadata full-text queries\nSingle words can be supplied as\ + \ is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the `pageOffset` query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages by increasing\ + \ the offset in multiples of limit (e.g., `offset = n * limit`), until all\ + \ results have been retrieved. The total number of pages can be calculated\ + \ by dividing the total number of results by the limit.\n\n## List operation\n\ + \nThis endpoint can be called without any query parameters. When called this\ + \ way, it returns a list of all files metadata objects." + parameters: + - in: "query" + name: "filter" + description: "Filter by files metadata (key-value metadata pair(s))." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for files via a full-text query over all file metadata." + schema: + type: "string" + - in: "query" + name: "includeContents" + description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + required: false + schema: + default: false + type: "boolean" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by its fields" + tags: + - "Files as User" + /api/v1/as-curator/flow-cytometries: + get: + description: "Retrieve all flow cytometry data and metadata objects that match\ + \ a query.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getFlowCytometryDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that identifies a set of rows related\ + \ to one run and is used to link data from the run to a sample. Multiple\ + \ values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Sample name from the file which allows retrieval of all the\ + \ rows related to the sample. Multiple values can be provided as a list." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" + in: "query" + name: "readoutType" + schema: + type: "string" + - description: "Value of \"Cell Population\" column. E.g.: `\"total cells\"\ + `, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special\ + \ characters like `/` which is used as a URI path separator, such characters\ + \ should be escaped manually before sending request. For example, `/` should\ + \ be escaped as `%2F`." + in: "query" + name: "population" + schema: + type: "string" + - description: "Marker value. E.g.: `PD1`, `BV786`" + in: "query" + name: "marker" + schema: + type: "string" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minValue" + schema: + type: "number" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryResponse" + description: "Retrieved Flow Cytometry data." + "400": + content: {} + description: "Flow Cytometry data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple flow cytometry data and metadata objects" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchFlowCytometryGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group/by/run/{id}: + get: + operationId: "getFlowCytometryGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/group/{id}: + get: + operationId: "getFlowCytometryGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchFlowCytometryRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/{id}: + get: + operationId: "getFlowCytometryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateFlowCytometryAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update object metadata" + tags: + - "Flow Cytometry SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/flow-cytometries/{id}/versions: + get: + operationId: "getFlowCytometryVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-curator/flow-cytometries/{id}/versions/{version}: + get: + operationId: "getFlowCytometryByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as Curator" + /api/v1/as-user/flow-cytometries: + get: + description: "Retrieve all flow cytometry data and metadata objects that match\ + \ a query.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getFlowCytometryDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Autogenerated numeric ID that identifies a set of rows related\ + \ to one run and is used to link data from the run to a sample. Multiple\ + \ values can be provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Sample name from the file which allows retrieval of all the\ + \ rows related to the sample. Multiple values can be provided as a list." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Required value of \"Readout type\" column. E.g.: `Count`, `Median`" + in: "query" + name: "readoutType" + schema: + type: "string" + - description: "Value of \"Cell Population\" column. E.g.: `\"total cells\"\ + `, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special\ + \ characters like `/` which is used as a URI path separator, such characters\ + \ should be escaped manually before sending request. For example, `/` should\ + \ be escaped as `%2F`." + in: "query" + name: "population" + schema: + type: "string" + - description: "Marker value. E.g.: `PD1`, `BV786`" + in: "query" + name: "marker" + schema: + type: "string" + - description: "Minimum threshold (inclusive) for returned expression values." + in: "query" + name: "minValue" + schema: + type: "number" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryResponse" + description: "Retrieved Flow Cytometry data." + "400": + content: {} + description: "Flow Cytometry data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple flow cytometry data and metadata objects" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all data objects." + operationId: "searchFlowCytometryGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for flow cytometry objects via a full text query over\ + \ all flow cytometry metadata. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group/by/run/{id}: + get: + operationId: "getFlowCytometryGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/group/{id}: + get: + operationId: "getFlowCytometryGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchFlowCytometryRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}: + get: + operationId: "getFlowCytometryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FlowCytometryItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}/versions: + get: + operationId: "getFlowCytometryVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-user/flow-cytometries/{id}/versions/{version}: + get: + operationId: "getFlowCytometryByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample flow cytometry by ID (accession)" + tags: + - "Flow Cytometry SPoT as User" + /api/v1/as-curator/data-types: + get: + description: "This endpoint is for instructional uses and can be used to get\ + \ the latest list of Data Types." + operationId: "getDataTypesAsCurator" + responses: + "200": + content: + application/json: + schema: + items: + type: "string" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Lists all available data types." + tags: + - "Linkage as Curator" + /api/v1/as-curator/data-types/links: + get: + description: "This endpoint should be used for instructional needs, and can\ + \ be used in order to get the links between the Data Types." + operationId: "getDataTypesLinksAsCurator" + parameters: + - description: "Return only links with the specified data type." + in: "query" + name: "type" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/SourceTypePair" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List all possible links between data types that match the specified\ + \ criteria." + tags: + - "Linkage as Curator" + /api/v1/as-curator/integration/link/expression/by/library/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByLibraryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related library ID\ + \ (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/by/preparation/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByPreparation" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related preparation\ + \ ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related sample ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getExpressionGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}: + post: + description: "Create a link between a group of cell expression objects and a\ + \ group of cell metadata.\n\nA cell expression object can be linked to one\ + \ cell metadata object only." + operationId: "createExpressionGroupCellGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell expression group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the cell metadata group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) cell links were created." + "204": + content: {} + description: "All links were created." + "400": + content: {} + description: "Incorrect Cell or Expression group provided, see error message\ + \ for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of cell expression objects and a group\ + \ of cell metadata." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of library objects" + operationId: "deleteExpressionGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of library\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of library objects.\n\nAn expression object can be linked to one object\ + \ only. If an expression object is already linked to another object, this\ + \ link will be deleted and a new link with the specified object will be created.\n\ + Expression objects of the same group can only be linked to objects of the\ + \ same study." + operationId: "createExpressionGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) sample links created." + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Library group, signal group or libraries to link not found" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ library objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of preparation objects" + operationId: "deleteExpressionGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of preparation\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of preparation objects.\n\nAn expression object can be linked to one object\ + \ only. If an expression object is already linked to another object, this\ + \ link will be deleted and a new link with the specified object will be created.\n\ + Expression objects of the same group can only be linked to objects of the\ + \ same study." + operationId: "createExpressionGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Some (not all) sample links created." + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Preparation group, signal group or preparations to link not\ + \ found" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ preparation objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of expression objects and a group\ + \ of sample objects" + operationId: "deleteExpressionGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of expression objects and a group of sample\ + \ objects" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between a group of expression objects and a group\ + \ of sample objects.\n\nAn expression object can be linked to one object only.\ + \ If an expression object is already linked to another object, this link will\ + \ be deleted and a new link with the specified object will be created.\nExpression\ + \ objects of the same group can only be linked to objects of the same study.\n\ + \n Users can specify a custom metadata field for linking omics data to samples\ + \ via the “linkingAttribute” parameter, if not specified the “Sample Source\ + \ ID“ sample metadata attribute will be used by default." + operationId: "createExpressionGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to a GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "400": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of expression objects and a group of\ + \ sample objects" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToLibraryPairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToPreparationPairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ + \ unique runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}: + delete: + description: "Delete link between an expression object and a library" + operationId: "deleteExpressionLibraryLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a library" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a library.\n\n\ + An expression object can be linked to one object only. If an expression object\ + \ is already linked to another object, this link will be deleted and a new\ + \ link with the specified object will be created.\nExpression objects of the\ + \ same group can only be linked to objects of the same study." + operationId: "createExpressionLibraryLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a library" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}: + delete: + description: "Delete link between an expression object and a preparation" + operationId: "deleteExpressionPreparationLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a preparation" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a preparation.\n\ + \nAn expression object can be linked to one object only. If an expression\ + \ object is already linked to another object, this link will be deleted and\ + \ a new link with the specified object will be created.\nExpression objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createExpressionPreparationLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a preparation" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between an expression object and a sample" + operationId: "deleteExpressionSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between an expression object and a sample" + tags: + - "Expression integration as Curator" + post: + description: "Create a link between an expression object and a sample.\n\nAn\ + \ expression object can be linked to one object only. If an expression object\ + \ is already linked to another object, this link will be deleted and a new\ + \ link with the specified object will be created.\nExpression objects of the\ + \ same group can only be linked to objects of the same study." + operationId: "createExpressionSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between an expression object and a sample" + tags: + - "Expression integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getFlowCytometryBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry run-level data by querying related sample\ + \ ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getFlowCytometryGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of flow-cytometry objects and a group\ + \ of sample objects" + operationId: "deleteFlowCytometryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a FACS file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of flow-cytometry objects and a group\ + \ of sample objects" + tags: + - "Flow Cytometry (FACS) integration as Curator" + post: + description: "Create a link between a group of flow-cytometry objects and a\ + \ group of sample objects.\n\nA flow-cytometry object can be linked to one\ + \ object only. If a flow-cytometry object is already linked to another object,\ + \ this link will be deleted and a new link with the specified object will\ + \ be created.\nFlow-cytometry objects of the same group can only be linked\ + \ to objects of the same study.\n\nUsers can specify a custom metadata field\ + \ for linking omics data to samples via the “linkingAttribute” parameter,\ + \ if not specified the “Sample Source ID“ sample metadata attribute will be\ + \ used by default." + operationId: "createFlowCytometryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a FACS file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of flow-cytometry objects and a group\ + \ of sample objects" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getFlowCytometryRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between a flow-cytometry object and a sample" + operationId: "deleteFlowCytometrySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level data block" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a flow-cytometry object and a sample" + tags: + - "Flow Cytometry (FACS) integration as Curator" + post: + description: "Create a link between a flow-cytometry object and a sample.\n\n\ + A flow-cytometry object can be linked to one object only. If a flow-cytometry\ + \ object is already linked to another object, this link will be deleted and\ + \ a new link with the specified object will be created.\nFlow-cytometry objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createFlowCytometrySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level data block" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a flow-cytometry object and a sample" + tags: + - "Flow Cytometry (FACS) integration as Curator" + /api/v1/as-curator/integration/link/libraries/by/samples: + get: + description: "Retrieve library metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibrariesBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related samples" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/by/sample/{id}: + get: + operationId: "getLibraryBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related sample ID (accession)" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/group/by/study/{id}: + get: + operationId: "getLibraryGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete links between samples and libraries related to the specified\ + \ group" + operationId: "deleteLibraryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the library group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete links between samples and libraries related to the specified\ + \ group" + tags: + - "Library integration as Curator" + post: + description: "Create links between samples and libraries.\n\nLibrary objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createLibraryGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the library group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between samples and libraries" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibraryLinksToSamplesAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library-samples pairs by group id. Pagination is based on\ + \ unique libraries, not unique pairs." + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete a link between a library and a sample" + operationId: "deleteLibrarySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the library object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a link between a library and a sample" + tags: + - "Library integration as Curator" + post: + description: "Create a link between a library and a sample.\n\nLibrary objects\ + \ of the same group can only be linked to objects of the same study." + operationId: "createLibrarySampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the library object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a library and a sample" + tags: + - "Library integration as Curator" + /api/v1/as-curator/integration/link/preparation/by/sample/{id}: + get: + operationId: "getPreparationBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related sample ID (accession)" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/group/by/study/{id}: + get: + operationId: "getPreparationGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete links between samples and preparations related to the specified\ + \ group" + operationId: "deletePreparationGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete links between samples and preparations related to the specified\ + \ group" + tags: + - "Preparation integration as Curator" + post: + description: "Create links between samples and preparations.\n\nPreparation\ + \ objects of the same group can only be linked to objects of the same study." + operationId: "createPreparationGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between samples and preparations" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationLinksToSamplesAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ preparations, not unique pairs." + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete a link between a preparation and a sample" + operationId: "deletePreparationSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a link between a preparation and a sample" + tags: + - "Preparation integration as Curator" + post: + description: "Create a link between a preparation and a sample.\n\nPreparation\ + \ objects of the same group can only be linked to objects of the same study." + operationId: "createPreparationSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the preparation object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a preparation and a sample" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/preparations/by/samples: + get: + description: "Retrieve preparation metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationsBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related samples" + tags: + - "Preparation integration as Curator" + /api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}: + delete: + description: "Delete link between a group of sample objects and a study" + operationId: "deleteSampleGroupStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of sample objects and a study" + tags: + - "Sample integration as Curator" + post: + description: "Create a link between a group of sample objects and a study.\n\ + \nSample objects of the same group can only be linked to the same study." + operationId: "createSampleGroupStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of sample objects and a study" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}: + delete: + description: "Delete link between a sample and a study" + operationId: "deleteSampleStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a sample and a study" + tags: + - "Sample integration as Curator" + post: + description: "Create a link between a sample and a study.\n\nSample objects\ + \ of the same group can only be linked to the same study." + operationId: "createSampleStudyLinkAsCurator" + parameters: + - description: "The ID (accession) of the sample object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the study object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a sample and a study" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/libraries: + get: + description: "Retrieve sample metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related libraries" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/preparations: + get: + description: "Retrieve sample metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related preparations" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/samples/by/study/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related study ID (accession)" + tags: + - "Sample integration as Curator" + /api/v1/as-curator/integration/link/studies/by/libraries: + get: + description: "Retrieve study metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related libraries" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/preparations: + get: + description: "Retrieve study metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related preparations" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/samples: + get: + description: "Retrieve study metadata objects whose linked sample metadata matches\ + \ all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getStudiesBySamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\"\ + . Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related samples" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/study/by/sample/{id}: + get: + operationId: "getStudyBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying sample ID (accession)" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/studies/by/files: + get: + description: "Retrieve study metadata objects whose linked attached files metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Attachment files (full-text or metadata key-value\ + \ pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To retrieve\ + \ all results, iterate through pages using `pageOffset` values of `n * pageLimit`\ + \ until a page returns fewer results than the page limit, which indicates\ + \ there are no more results.\n\n" + operationId: "getStudiesByFilesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by attachment file metadata (key-value metadata pair(s)).\ + \ E.g. \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all attached files metadata fields. E.g. \"RNA-Seq of human dendritic\ + \ cells\". Queries matching dictionary terms are automatically expanded\ + \ to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related attachment files" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/study/by/file/{id}: + get: + operationId: "getStudyByFileAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying attachment file ID (accession)" + tags: + - "Study integration as Curator" + /api/v1/as-curator/integration/link/variant/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getVariantBySampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant run-level data by querying related sample ID (accession)" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getVariantGroupsByStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}: + delete: + description: "Delete link between a group of variant objects and a group of\ + \ sample objects" + operationId: "deleteVariantGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a VCF file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a group of variant objects and a group of sample\ + \ objects" + tags: + - "Variant integration as Curator" + post: + description: "Create a link between a group of variant objects and a group of\ + \ sample objects.\n\nA variant object can be linked to one object only. If\ + \ a variant object is already linked to another object, this link will be\ + \ deleted and a new link with the specified object will be created.\nVariant\ + \ objects of the same group can only be linked to objects of the same study.\n\ + \n Users can specify a custom metadata field for linking omics data to samples\ + \ via the “linkingAttribute” parameter, if not specified the “Sample Source\ + \ ID“ sample metadata attribute will be used by default." + operationId: "createVariantGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the group of run-level objects (corresponding\ + \ to the column in a VCF file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + - description: "Metadata field containing sample IDs to link omics data to samples.\ + \ The template applied to the study must contain this field in the sample\ + \ section." + in: "query" + name: "linkingAttribute" + schema: + type: "string" + responses: + "200": + content: {} + description: "Not all signal data were linked to the samples." + "204": + content: {} + description: "All signal data were linked to the samples from the specified\ + \ sample group." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Sample group, signal group or samples to the link were not\ + \ found, or the specified linking attribute was not found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a group of variant objects and a group of sample\ + \ objects" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getVariantRunToSamplePairsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}: + delete: + description: "Delete link between a variant object and a sample" + operationId: "deleteVariantSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link deleted." + "400": + content: {} + description: "Link cannot be deleted." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete link between a variant object and a sample" + tags: + - "Variant integration as Curator" + post: + description: "Create a link between a variant object and a sample.\n\nA variant\ + \ object can be linked to one object only. If a variant object is already\ + \ linked to another object, this link will be deleted and a new link with\ + \ the specified object will be created.\nVariant objects of the same group\ + \ can only be linked to objects of the same study." + operationId: "createVariantSampleLinkAsCurator" + parameters: + - description: "The ID (accession) of the run-level object (corresponding to\ + \ the column in a VCG/GCT file)" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "Link created." + "400": + content: {} + description: "Link cannot be created." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create a link between a variant object and a sample" + tags: + - "Variant integration as Curator" + /api/v1/as-curator/integration/fulltext/search/studies: + post: + description: "Find studies and retrieve their data using full-text search or\ + \ facet search by metadata of study itself or child object (samples, libraries,\ + \ preparations, signal groups). Only studies available to that users are returned.\n\ + \nThe endpoint returns:\n- a list of studies with their metadata summary;\n\ + - a list of filter objects with counts; filter list is the same for all users\ + \ in an and can be configured in “Study Browser” application via \"Configure\ + \ facets\" (by a user with corresponding permission); for each filter object,\ + \ only the first 5 most popular facets are returned, the facts are sorted\ + \ by the count value in descending order; only studies available to user are\ + \ counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"\ + `\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the\ + \ request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can\ + \ be passed in the request body.\n\nTo filter studies via facets, the filter\ + \ attributes are necessary: type = SELECT, filterOptionId. For details, use\ + \ the request body model. filterOptionId can be obtained from the response\ + \ body when the endpoint is first called without filters. Multiple filters\ + \ with type = SELECT can be passed in the request body. Filters within the\ + \ same attribute are automatically used with the OR operator. Filters of different\ + \ attributes are automatically used with the AND operator. This behaviour\ + \ can not be changed.\n\nIt is possible to call the endpoint without any filters,\ + \ then all the studies available to the user are returned." + operationId: "searchStudiesByFilterAsCurator" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/SearchStudyRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FindObjectsResponse" + description: "The request was successful. Retrieved studies and filters." + "400": + content: {} + description: "Invalid request body" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Genestack\ + \ API token in the `Genestack-API-Token` HTTP header (this token may be\ + \ obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + summary: "Find and retrieve studies by full-text or facet query" + tags: + - "Study integration as Curator" + x-codegen-request-body-name: "request" + /api/v1/as-curator/links: + delete: + description: "This method should be used in case you want to delete the links\ + \ of an object. Please, keep in mind that deleting a link between Study and\ + \ Sample will not delete a link between corresponding Sample and it’s signal." + operationId: "deleteLinkAsCurator" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + responses: + "204": + content: {} + description: "Link has been successfully deleted." + "400": + content: {} + description: "Invalid data in request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No links were found." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Deletes existing links matching the specified criteria." + tags: + - "Linkage as Curator" + get: + description: "Please make sure that this endpoint should be used only for getting\ + \ all links to a specific object. In case you specify both firstId and secondId\ + \ an expected answer would be true for existing links and false for no link\ + \ between the objects." + operationId: "getLinksByParamsAsCurator" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + - description: "Param says to skip that many links before beginning to return\ + \ links." + in: "query" + name: "offset" + schema: + default: 0 + format: "int32" + type: "integer" + - description: "Param says to limit the count of returned links." + in: "query" + name: "limit" + schema: + default: 1000 + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links matching the specified criteria." + tags: + - "Linkage as Curator" + post: + description: "This method should be used only in case you need to create links\ + \ between 2 objects. Links are created both ways (e.g. when linking Object\ + \ A to Object B it can be done both ways, by linking firstType to secondType\ + \ and vice versa)." + operationId: "saveLinksAsCurator" + requestBody: + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Link" + type: "array" + required: false + responses: + "200": + content: {} + description: "Links were updated or not modified." + "201": + content: {} + description: "At least one new link has been created.Some other links might\ + \ have been updated or not modified." + "400": + content: {} + description: "Invalid data in request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "409": + content: {} + description: "Link cannot be created due to conflict with existing link" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Creates new links between objects." + tags: + - "Linkage as Curator" + x-codegen-request-body-name: "links" + /api/v1/as-curator/links/get-batch: + post: + description: "Please make sure to use that endpoint for batch calls only. You\ + \ are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the\ + \ same time. Please always specify firstType." + operationId: "getLinksByIdsAsCurator" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/BatchOfIds" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links by passing many IDs. \nPagination goes through\ + \ all links matched the criteria." + tags: + - "Linkage as Curator" + x-codegen-request-body-name: "request" + /api/v1/as-curator/omics/cells: + get: + description: "Retrieve cell objects whose linked data matches all supplied conditions.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies\ + \ (full-text or metadata key-value pair)\n2. Samples (full-text or metadata\ + \ key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4.\ + \ Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsAsCurator" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms.\n" + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`\n" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`\n" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `reversed-phase liquid chromatography`.\ + \ Queries matching dictionary terms are automatically expanded to include\ + \ synonyms.\n" + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to cell expression data and originally\ + \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the cell measurements\ + \ has values from a certain range. Examples: `value = 3`, `value > 3`, `-3\ + \ < value < 3`.\n \nCombine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows\ + \ where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where\ + \ Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`:\ + \ Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A\ + \ && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B.\ + \ \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example\ + \ above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select\ + \ all rows where Name_1 is A and either Name_2 is B or minimal possible\ + \ measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve Cell objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/cells/expression/data: + get: + description: "Retrieve cell expression objects by searching across multiple\ + \ metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + 1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text\ + \ or metadata key-value pair)\n3. Libraries (full-text or metadata key-value\ + \ pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsExpressionDataAsCurator" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cell expression objects by searching across multiple metadata\ + \ types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/data: + get: + description: "Retrieve any data objects whose linked data matches all supplied\ + \ conditions.This endpoint does not support search by expression linked to\ + \ Cell group. Use /omics/cells/expression/data endpoint for search by Cell\ + \ expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. To return all results iterate\ + \ through pages using cursor values until the `resultsExhausted` response\ + \ field is true.\n\n" + operationId: "omicsSearchExpressionDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve data objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchExpressionGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/expression/streamed-data: + get: + description: "Stream data from a given group for a tabular file that matches\ + \ a sample/library/preparations query/filter. If no query/filters are supplied\ + \ all expression data is returned. If a metadata filter is specified, this\ + \ endpoint will only return expression data that is associated with a sample\ + \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ + \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ + \ filters are key-value pairs joined by an operator. The `=` operator matches\ + \ literal values/string. The `!=` operator matches anything except the literal\ + \ value/string. The `<` or `>` operators match numerical results that are\ + \ less or greater than the supplied value. Strings containing whitespace need\ + \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ + \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n" + operationId: "omicsSearchStreamedExpressionDataAsCurator" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Deprecated; use `exQuery` parameter instead. Filters results\ + \ by the feature column (e.g., Gene ID). The feature parameter value must\ + \ match the name of the identifier in the GCT file (under the NAME column).\ + \ Example: `ENSG00000077044`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Accession of the expression group object (GCT)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + - description: "The number of digits after the decimal point for floating-point\ + \ values. The final value is rounded up. Must be non-negative. The default\ + \ is 4." + in: "query" + name: "roundDigits" + schema: + default: 4 + format: "int32" + type: "integer" + responses: + "200": + content: + text/csv: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Expression data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given tabular file" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/flow-cytometry/data: + get: + description: "Retrieve flow cytometry data objects whose linked data matches\ + \ all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text\ + \ or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value\ + \ pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked\ + \ flow cytometry objects (list of data key-value pairs)\n5. Linked any data\ + \ (except variant and flow cytometry) objects (list of data key-value pairs)\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is; otherwise,\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Data queries\nData queries must be a list of key-value pairs, separated\ + \ by whitespace. The set of valid keys depends on the specific query type,\ + \ and is documented in the query parameter summary. The values can be simple\ + \ non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending\ + \ on the key, the value may be be a comma-delimited list of string values.\ + \ Others require numerical values.\n\n## Combinations\nMetadata queries/filters\ + \ for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n## Versioning\nSpecific versions\ + \ of omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchFlowCytometryDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry data objects by searching across multiple\ + \ data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/flow-cytometry/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchFlowCytometryGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/samples: + get: + description: "Retrieve sample metadata objects whose linked data matches all\ + \ supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchSamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata objects by searching across multiple data\ + \ types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/data: + get: + description: "Retrieve variant data objects whose linked data matches all supplied\ + \ conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked expression\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchVariantDataAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant data objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchVariantGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Unique identifier (accession) of Reference Genome object." + in: "query" + name: "referenceGenomeId" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/variant/streamed-data: + get: + description: "Stream data from a given group for a VCF file that matches a sample\ + \ query/filter. If no query/filters are supplied all variant data is returned.\ + \ If a metadata filter is specified, this endpoint will only return variant\ + \ data that is associated with a sample via metadata attribute.\n\n## Conditions\n\ + It is possible to supply conditions for Samples (full-text or metadata key-value\ + \ pair)\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is; otherwise, use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n" + operationId: "omicsSearchStreamedVariantDataAsCurator" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Accession of the variant group object (VCF)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + responses: + "200": + content: + text/tab-separated-values: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Variant data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given VCF file" + tags: + - "Omics queries as Curator" + /api/v1/as-curator/omics/cells/analytics/cell-ratio: + post: + operationId: "cellRatioAsCurator" + summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes\ + \ in single-cell data." + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint calculates cell ratio statistics based on single-cell\ + \ metadata.\n\nIt allows quantifying the proportion of cells that meet specific\ + \ criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\n\ + relative to a defined reference group or the total cell population (`countAvailable`)\ + \ defined by study, samples, library, or preparation metadata.\n\n`countAvailable`\ + \ parameter returns all cells specified in study, sample, library, or preparation\ + \ queries and filters.\nIn case `exQuery` is selected, only cells linked to\ + \ cell expression will be counted in `countSelected` parameter.\n\nThe endpoint\ + \ supports filtering by study, sample, library, or preparation metadata and\ + \ filtering by cell expression or cell metadata fields.\n\nRequest and response\ + \ parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/CRRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CRResponse" + description: "Cell ratio result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/omics/cells/analytics/differential-expression: + post: + operationId: "differentialExpressionAsCurator" + summary: "[BETA] Perform differential gene expression analytics between case\ + \ and control cell groups" + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint computes differential gene expression between two\ + \ specified cell groups (case vs control) within single-cell data.\n\nConsult\ + \ `/omics` search endpoints to find description of parameters within the cell\ + \ groups.\nThe response includes per-gene metrics that characterize expression\ + \ differences between the two groups:\n- `Gene name` - gene identifier.\n\ + - `Case cell count` - number of cells expressing the gene in the case group.\n\ + - `Control cell count` - number of cells expressing the gene in the control\ + \ group.\n- `Average expression (case)` - mean expression level across case\ + \ cells.\n- `Average expression (control)` - mean expression level across\ + \ control cells.\n- `Expression difference` - numerical difference between\ + \ average expressions.\n- `Fold change` - ratio of average expressions between\ + \ case and control groups.\n- `U statistic` - Mann–Whitney U test statistic\ + \ that measures the difference between Case and Control groups.\n- `p-value`\ + \ - the probability of observing results as extreme as (or more extreme than)\ + \ those obtained, assuming that the null hypothesis is true.\n\nResults are\ + \ sorted by absolute value of fold change in descending order, allowing easy\ + \ identification of the most differentially expressed genes.\n\nRequest and\ + \ response parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DERequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DEResponse" + description: "Differential expression result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/omics/cells/analytics/gene-summary: + post: + operationId: "geneSummaryAsCurator" + summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries\ + \ for single-cell data." + tags: + - "[BETA] Analytics omics queries as Curator" + description: "This endpoint provides descriptive statistical metrics for gene\ + \ expression across single-cell datasets.\nIt aggregates and summarizes expression\ + \ data for each gene to help assess variability, distribution,\nand intensity\ + \ of expression within the population of cells.\n\nThe computed metrics include:\n\ + \ - `Gene name` - gene identifier.\n - `Cell count` - number of cells with\ + \ measurable expression for each gene.\n - `Mean expression value`\n - `Median\ + \ expression value`\n - `Quantiles` - configurable expression percentiles.\n\ + \ - `Histogram (density)` - binned distribution of expression levels for\ + \ visualization.\n - `Standard deviation` - dispersion of expression values.\n\ + \ - `Minimum and maximum values` - range of expression across cells.\n\n\ + Results are sorted by gene name.\n\nRequest and response parameters are subject\ + \ to change as this feature is in BETA.\n" + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/GSRequest" + responses: + "200": + description: "Gene summary result" + content: + application/json: + schema: + $ref: "#/components/schemas/GSResponse" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token])\ + \ or Genestack API token in the `Genestack-API-Token`\nheader (this token\ + \ may be obtained from the Genestack UI _Profile_ page).\n" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\n\ + failure in the Genestack system, please file a bug report to support@genestack.com,\n\ + including the error details.\"\n" + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/integration/studies/{id}/tasks/publish-versions: + post: + description: "This endpoint publishes information from drafts and creates new\ + \ metadata versions for the specified study and all associated objects. The\ + \ version name is set to “Auto-published by API call”. Only curators with\ + \ access to the specified studies can use this method." + operationId: "publishStudyByAccessionAsCurator" + parameters: + - description: "Supply the accession of the study to be published" + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Supply text to name this version. If not supplied the version\ + \ name is set to “Auto-published by API call”" + in: "query" + name: "versionMessage" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Forbidden" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Asynchronous task that publishes all pending versions for a single\ + \ study." + tags: + - "Metadata versioning as Curator" + /api/v1/as-curator/integration/studies/{id}/validation-summary: + get: + operationId: "getStudyValidationSummary" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/StudyValidationSummary" + description: "Study validation result." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve validation summary by querying study ID (accession)" + tags: + - "Validation summary as Curator" + /api/v1/as-curator/integration/link/files/by/study/{id}: + get: + operationId: "getFilesByStudyAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by study ID" + tags: + - "Files integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}: + post: + description: "Create links between cells and samples.\n\nCell objects of the\ + \ same group can be linked to sample objects from multiple sample groups,\ + \ but only within the same study." + operationId: "createCellGroupSampleGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the sample group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to samples." + "204": + content: {} + description: "Cell objects have been fully linked to samples." + "400": + content: {} + description: "Sample group, cell group or samples to the link were not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and samples" + tags: + - "Cell integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}: + post: + description: "Create links between cells and libraries.\n\nCell objects of the\ + \ same group can be linked to library objects from multiple library groups,\ + \ but only within the same study." + operationId: "createCellGroupLibraryGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the library group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to libraries." + "204": + content: {} + description: "Cell objects have been fully linked to libraries." + "400": + content: {} + description: "Sample group, cell group or libraries to the link were not\ + \ found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and libraries" + tags: + - "Cell integration as Curator" + /api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}: + post: + description: "Create links between cells and preparations.\n\nCell objects of\ + \ the same group can be linked to preparation objects from multiple preparation\ + \ groups, but only within the same study." + operationId: "createCellGroupPreparationGroupLinkAsCurator" + parameters: + - description: "The ID (accession) of the cell group object" + in: "path" + name: "sourceId" + required: true + schema: + type: "string" + - description: "The ID (accession) of the preparation group object" + in: "path" + name: "targetId" + required: true + schema: + type: "string" + responses: + "200": + content: {} + description: "Cell objects have been partially linked to preparations." + "204": + content: {} + description: "Cell objects have been fully linked to preparations." + "400": + content: {} + description: "Sample group, cell group or preparations to the link were\ + \ not found." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Create links between cells and preparations" + tags: + - "Cell integration as Curator" + /api/v1/as-user/data-types: + get: + description: "This endpoint is for instructional uses and can be used to get\ + \ the latest list of Data Types." + operationId: "getDataTypesAsUser" + responses: + "200": + content: + application/json: + schema: + items: + type: "string" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Lists all available data types." + tags: + - "Linkage as User" + /api/v1/as-user/data-types/links: + get: + description: "This endpoint should be used for instructional needs, and can\ + \ be used in order to get the links between the Data Types." + operationId: "getDataTypesLinksAsUser" + parameters: + - description: "Return only links with the specified data type." + in: "query" + name: "type" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/SourceTypePair" + type: "array" + uniqueItems: true + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List all possible links between data types that match the specified\ + \ criteria." + tags: + - "Linkage as User" + /api/v1/as-user/integration/link/expression/by/library/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByLibraryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related library ID\ + \ (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/by/preparation/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionByPreparationAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related preparation\ + \ ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getExpressionBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve expression run-level data by querying related sample ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getExpressionGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToLibraryPairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-library pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToPreparationPairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-preparation pairs by group id. Pagination is based on\ + \ unique runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getExpressionRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Expression integration as User" + /api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getFlowCytometryBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry run-level data by querying related sample\ + \ ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getFlowCytometryGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getFlowCytometryRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Flow Cytometry (FACS) integration as User" + /api/v1/as-user/integration/link/libraries/by/samples: + get: + description: "Retrieve library metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibrariesBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related samples" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/by/sample/{id}: + get: + operationId: "getLibraryBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Library" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library metadata by querying related sample ID (accession)" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/group/by/study/{id}: + get: + operationId: "getLibraryGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getLibraryLinksToSamplesAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve library-samples pairs by group id. Pagination is based on\ + \ unique libraries, not unique pairs." + tags: + - "Library integration as User" + /api/v1/as-user/integration/link/preparation/by/sample/{id}: + get: + operationId: "getPreparationBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/Preparation" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related sample ID (accession)" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparation/group/by/study/{id}: + get: + operationId: "getPreparationGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationLinksToSamplesAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ preparations, not unique pairs." + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/preparations/by/samples: + get: + description: "Retrieve preparation metadata objects whose linked sample metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getPreparationsBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparation metadata by querying related samples" + tags: + - "Preparation integration as User" + /api/v1/as-user/integration/link/samples/by/libraries: + get: + description: "Retrieve sample metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related libraries" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/samples/by/preparations: + get: + description: "Retrieve sample metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related preparations" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/samples/by/study/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getSamplesByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata by querying related study ID (accession)" + tags: + - "Sample integration as User" + /api/v1/as-user/integration/link/studies/by/libraries: + get: + description: "Retrieve study metadata objects whose linked library metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related libraries" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/preparations: + get: + description: "Retrieve study metadata objects whose linked preparation metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Parent studies (full-text or metadata key-value pair)\n3. Linked variant\ + \ objects (list of data key-value pairs)\n4. Linked flow cytometry objects\ + \ (list of data key-value pairs)\n5. Linked any data (except variant and flow\ + \ cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getStudiesByPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related preparations" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/samples: + get: + description: "Retrieve study metadata objects whose linked sample metadata matches\ + \ all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getStudiesBySamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\"\ + . Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related samples" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/study/by/sample/{id}: + get: + operationId: "getStudyBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying sample ID (accession)" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/studies/by/files: + get: + description: "Retrieve study metadata objects whose linked attached files metadata\ + \ matches all supplied conditions.\n\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Attachment files (full-text or metadata key-value\ + \ pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To retrieve\ + \ all results, iterate through pages using `pageOffset` values of `n * pageLimit`\ + \ until a page returns fewer results than the page limit, which indicates\ + \ there are no more results.\n\n" + operationId: "getStudiesByFilesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by attachment file metadata (key-value metadata pair(s)).\ + \ E.g. \"Species or strain\"=\"Homo sapiens\"" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study metadata objects via a full-text query over\ + \ all attached files metadata fields. E.g. \"RNA-Seq of human dendritic\ + \ cells\". Queries matching dictionary terms are automatically expanded\ + \ to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata objects by querying related attachment files" + tags: + - "Study integration as User" + /api/v1/as-user/integration/link/study/by/file/{id}: + get: + operationId: "getStudyByFileAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve study metadata by querying attachment file ID (accession)" + tags: + - "Study integration as User" + /api/v1/as-user/integration/fulltext/search/studies: + post: + description: "Find studies and retrieve their data using full-text search or\ + \ facet search by metadata of study itself or child object (samples, libraries,\ + \ preparations, signal groups). Only studies available to that users are returned.\n\ + \nThe endpoint returns:\n- a list of studies with their metadata summary;\n\ + - a list of filter objects with counts; filter list is the same for all users\ + \ in an and can be configured in “Study Browser” application via \"Configure\ + \ facets\" (by a user with corresponding permission); for each filter object,\ + \ only the first 5 most popular facets are returned, the facts are sorted\ + \ by the count value in descending order; only studies available to user are\ + \ counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"\ + `\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the\ + \ request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can\ + \ be passed in the request body.\n\nTo filter studies via facets, the filter\ + \ attributes are necessary: type = SELECT, filterOptionId. For details, use\ + \ the request body model. filterOptionId can be obtained from the response\ + \ body when the endpoint is first called without filters. Multiple filters\ + \ with type = SELECT can be passed in the request body. Filters within the\ + \ same attribute are automatically used with the OR operator. Filters of different\ + \ attributes are automatically used with the AND operator. This behaviour\ + \ can not be changed.\n\nIt is possible to call the endpoint without any filters,\ + \ then all the studies available to the user are returned." + operationId: "searchStudiesByFilterAsUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/SearchStudyRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/FindObjectsResponse" + description: "The request was successful. Retrieved studies and filters." + "400": + content: {} + description: "Invalid request body" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Genestack\ + \ API token in the `Genestack-API-Token` HTTP header (this token may be\ + \ obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + summary: "Find and retrieve studies by full-text or facet query" + tags: + - "Study integration as User" + x-codegen-request-body-name: "request" + /api/v1/as-user/integration/link/variant/by/sample/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To retrieve all results, iterate through pages\ + \ using `pageOffset` values of `n * pageLimit` until a page returns fewer\ + \ results than the page limit, which indicates there are no more results.\n\ + \n" + operationId: "getVariantBySampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant run-level data by querying related sample ID (accession)" + tags: + - "Variant integration as User" + /api/v1/as-user/integration/link/variant/group/by/study/{id}: + get: + description: "## Versioning\nSpecific versions of omics data files (eg. GCT)\ + \ can be queried via the useVersions parameter. Different versions of an omics\ + \ data file are associated via their CHAIN_ID metadata value. This CHAIN_ID\ + \ can be supplied to the useVersions parameter along with the version number\ + \ or specific omics data file accessions to include them in the query. If\ + \ nothing is supplied to the useVersions parameter then only the active version\ + \ (which is usually the last one imported) is queried. This acts as a filter\ + \ before the rest of the query is carried out.\n\nExample usage:\nuseVersions=*\ + \ (query all versions, including those without CHAIN_IDs)\nuseVersions=v2\ + \ (query the second version. If there is no second version then the data file\ + \ is not queried)\nuseVersions=v1,v0 (query the first version and any data\ + \ files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files\ + \ with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n" + operationId: "getVariantGroupsByStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/MetadataWithId" + type: "array" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group metadata by querying study ID (accession)" + tags: + - "Variant integration as User" + /api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size. In order to retrieve all matching results\ + \ the client needs to request multiple pages starting from an offset to the\ + \ first result. You can do this using the pageOffset query parameter. A value\ + \ of 0 (the default) instructs the server to return the first page of results,\ + \ 100 would return a page of results starting from the 101st result and so\ + \ on. To retrieve all results, iterate through pages using `pageOffset` values\ + \ of `n * pageLimit` until a page returns fewer results than the page limit,\ + \ which indicates there are no more results.\n\n" + operationId: "getVariantRunToSamplePairsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run-sample pairs by group id. Pagination is based on unique\ + \ runs, not unique pairs." + tags: + - "Variant integration as User" + /api/v1/as-user/links: + get: + description: "Please make sure that this endpoint should be used only for getting\ + \ all links to a specific object. In case you specify both firstId and secondId\ + \ an expected answer would be true for existing links and false for no link\ + \ between the objects." + operationId: "getLinksByParamsAsUser" + parameters: + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "firstId" + required: true + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "firstType" + schema: + type: "string" + - description: "Object ID (accession) (e.g. accession of study)" + in: "query" + name: "secondId" + schema: + type: "string" + - description: "Type of the object (e.g. study)" + in: "query" + name: "secondType" + schema: + type: "string" + - description: "Param says to skip that many links before beginning to return\ + \ links." + in: "query" + name: "offset" + schema: + default: 0 + format: "int32" + type: "integer" + - description: "Param says to limit the count of returned links." + in: "query" + name: "limit" + schema: + default: 1000 + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links matching the specified criteria." + tags: + - "Linkage as User" + /api/v1/as-user/links/get-batch: + post: + description: "Please make sure to use that endpoint for batch calls only. You\ + \ are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the\ + \ same time. Please always specify firstType." + operationId: "getLinksByIdsAsUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/BatchOfIds" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Finds existing links by passing many IDs. \nPagination goes through\ + \ all links matched the criteria." + tags: + - "Linkage as User" + x-codegen-request-body-name: "request" + /api/v1/as-user/omics/cells: + get: + description: "Retrieve cell objects whose linked data matches all supplied conditions.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies\ + \ (full-text or metadata key-value pair)\n2. Samples (full-text or metadata\ + \ key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4.\ + \ Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text\ + \ queries\nSingle words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. Speech marks and backslash\ + \ characters in the query need to be escaped with a backslash (`\\`).\n\n\ + ## Metadata filters\nMetadata filters are key-value pairs joined by an operator.\ + \ The `=` operator matches literal values/string. The `!=` operator matches\ + \ anything except the literal value/string. The `<` or `>` operators match\ + \ numerical results that are less or greater than the supplied value. Strings\ + \ containing whitespace need to be quoted with (`\"`).\n\n## Data queries\n\ + Data queries must be a list of key-value pairs, separated by whitespace. The\ + \ set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsAsUser" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms.\n" + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`\n" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms.\n" + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`\n" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `reversed-phase liquid chromatography`.\ + \ Queries matching dictionary terms are automatically expanded to include\ + \ synonyms.\n" + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to cell expression data and originally\ + \ uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the cell measurements\ + \ has values from a certain range. Examples: `value = 3`, `value > 3`, `-3\ + \ < value < 3`.\n \nCombine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows\ + \ where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where\ + \ Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`:\ + \ Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A\ + \ && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B.\ + \ \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example\ + \ above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select\ + \ all rows where Name_1 is A and either Name_2 is B or minimal possible\ + \ measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve Cell objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/cells/expression/data: + get: + description: "Retrieve cell expression objects by searching across multiple\ + \ metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + 1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text\ + \ or metadata key-value pair)\n3. Libraries (full-text or metadata key-value\ + \ pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Paging\nFor performance reasons this\ + \ endpoint returns results in \"pages\" of limited size together with a `cursor`\ + \ tag. To retrieve the next page of results please supply this `cursor` tag\ + \ to resume the query from your previous result and get the next page. If\ + \ there are no more results you will just retrieve an empty result." + operationId: "omicsSearchCellsExpressionDataAsUser" + parameters: + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "Search for cells by their metadata attributes. The following\ + \ attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`,\ + \ `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats:\ + \ `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other\ + \ attributes are considered to be custom and stored as string data type.\n\ + \nTo use filters for cell metadata objects use the following query types:\n\ + 1. By key=value pair for attributes. Single words can be supplied as is;\ + \ otherwise, use speech marks (`\"`) to quote queries that include whitespace:\ + \ `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include\ + \ spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute\ + \ with string data type.\n2. It is possible to specify a set of possible\ + \ values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize\ + \ range filters to search numeric attributes. Apply `<` (less than), `>`\ + \ (greater than), and `=` (equal to) symbols to specify the desired ranges\ + \ as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP,\ + \ PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`,\ + \ `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records\ + \ where the attribute field contains the provided substring: `cellType =~\ + \ \"B cell\"`.\n5. Combine multiple filters for different feature attributes\ + \ and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical\ + \ operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`:\ + \ exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8`\ + \ or `batch=BatchA AND percentMito<8`: select all objects with BatchA and\ + \ percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR\ + \ cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2\ + \ && nCounts>=1000`: select all objects where percentMito is greater than\ + \ 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3\ + \ || -3 < percentMito < 8)`: combine logical operators in one query." + in: "query" + name: "cellQuery" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve cell expression objects by searching across multiple metadata\ + \ types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/data: + get: + description: "Retrieve any data objects whose linked data matches all supplied\ + \ conditions.This endpoint does not support search by expression linked to\ + \ Cell group. Use /omics/cells/expression/data endpoint for search by Cell\ + \ expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. To return all results iterate\ + \ through pages using cursor values until the `resultsExhausted` response\ + \ field is true.\n\n" + operationId: "omicsSearchExpressionDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve data objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchExpressionGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/expression/streamed-data: + get: + description: "Stream data from a given group for a tabular file that matches\ + \ a sample/library/preparations query/filter. If no query/filters are supplied\ + \ all expression data is returned. If a metadata filter is specified, this\ + \ endpoint will only return expression data that is associated with a sample\ + \ via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply\ + \ conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2.\ + \ Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text\ + \ or metadata key-value pair)\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is; otherwise, use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata\ + \ filters are key-value pairs joined by an operator. The `=` operator matches\ + \ literal values/string. The `!=` operator matches anything except the literal\ + \ value/string. The `<` or `>` operators match numerical results that are\ + \ less or greater than the supplied value. Strings containing whitespace need\ + \ to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for\ + \ the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n \n\n## Error Handling\n In case\ + \ of unexpected internal error during data retrieval, the last line of the\ + \ body will contain an error message, prefixed by the `#` character \n\n" + operationId: "omicsSearchStreamedExpressionDataAsUser" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"\ + Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Deprecated; use `exQuery` parameter instead. Filters results\ + \ by the feature column (e.g., Gene ID). The feature parameter value must\ + \ match the name of the identifier in the GCT file (under the NAME column).\ + \ Example: `ENSG00000077044`" + explode: true + in: "query" + name: "featureList" + schema: + items: + type: "string" + example: "KRAS" + type: "array" + style: "form" + - description: "Accession of the expression group object (GCT)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + - description: "The number of digits after the decimal point for floating-point\ + \ values. The final value is rounded up. Must be non-negative. The default\ + \ is 4." + in: "query" + name: "roundDigits" + schema: + default: 4 + format: "int32" + type: "integer" + responses: + "200": + content: + text/csv: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Expression data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given tabular file" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/flow-cytometry/data: + get: + description: "Retrieve flow cytometry data objects whose linked data matches\ + \ all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\ + \n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text\ + \ or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value\ + \ pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked\ + \ flow cytometry objects (list of data key-value pairs)\n5. Linked any data\ + \ (except variant and flow cytometry) objects (list of data key-value pairs)\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is; otherwise,\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Data queries\nData queries must be a list of key-value pairs, separated\ + \ by whitespace. The set of valid keys depends on the specific query type,\ + \ and is documented in the query parameter summary. The values can be simple\ + \ non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending\ + \ on the key, the value may be be a comma-delimited list of string values.\ + \ Others require numerical values.\n\n## Combinations\nMetadata queries/filters\ + \ for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators,\ + \ using white-space to separate out the terms and operators. Parentheses `(\ + \ )` can be used for complex expressions.\n\n## Versioning\nSpecific versions\ + \ of omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchFlowCytometryDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve flow cytometry data objects by searching across multiple\ + \ data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/flow-cytometry/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchFlowCytometryGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/samples: + get: + description: "Retrieve sample metadata objects whose linked data matches all\ + \ supplied conditions.\n\n## Conditions\nIt is possible to supply conditions\ + \ for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies\ + \ (full-text or metadata key-value pair)\n3. Linked variant objects (list\ + \ of data key-value pairs)\n4. Linked flow cytometry objects (list of data\ + \ key-value pairs)\n5. Linked any data (except variant and flow cytometry)\ + \ objects (list of data key-value pairs)\n\n## Metadata full-text queries\n\ + Single words can be supplied as is; otherwise, use speech marks (`\"`) to\ + \ quote queries that include whitespace. Speech marks and backslash characters\ + \ in the query need to be escaped with a backslash (`\\`).\n\n## Metadata\ + \ filters\nMetadata filters are key-value pairs joined by an operator. The\ + \ `=` operator matches literal values/string. The `!=` operator matches anything\ + \ except the literal value/string. The `<` or `>` operators match numerical\ + \ results that are less or greater than the supplied value. Strings containing\ + \ whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries\ + \ must be a list of key-value pairs, separated by whitespace. The set of valid\ + \ keys depends on the specific query type, and is documented in the query\ + \ parameter summary. The values can be simple non-whitespace strings, or strings\ + \ enclosed by speech marks (`\"`). Depending on the key, the value may be\ + \ be a comma-delimited list of string values. Others require numerical values.\n\ + \n## Combinations\nMetadata queries/filters for the same parameter can be\ + \ combined with `&&`, `AND`, `||` and `OR` operators, using white-space to\ + \ separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Versioning\nSpecific versions of omics data files\ + \ (eg. GCT) can be queried via the useVersions parameter. Different versions\ + \ of an omics data file are associated via their CHAIN_ID metadata value.\ + \ This CHAIN_ID can be supplied to the useVersions parameter along with the\ + \ version number or specific omics data file accessions to include them in\ + \ the query. If nothing is supplied to the useVersions parameter then only\ + \ the active version (which is usually the last one imported) is queried.\ + \ This acts as a filter before the rest of the query is carried out.\n\nExample\ + \ usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\n\ + useVersions=v2 (query the second version. If there is no second version then\ + \ the data file is not queried)\nuseVersions=v1,v0 (query the first version\ + \ and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for\ + \ omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchSamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve sample metadata objects by searching across multiple data\ + \ types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/data: + get: + description: "Retrieve variant data objects whose linked data matches all supplied\ + \ conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\n\ + It is possible to supply conditions for:\n\n1. Samples (full-text or metadata\ + \ key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\ + 3. Linked variant objects (list of data key-value pairs)\n4. Linked expression\ + \ objects (list of data key-value pairs)\n5. Linked any data (except variant\ + \ and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata\ + \ full-text queries\nSingle words can be supplied as is; otherwise, use speech\ + \ marks (`\"`) to quote queries that include whitespace. Speech marks and\ + \ backslash characters in the query need to be escaped with a backslash (`\\\ + `).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by\ + \ an operator. The `=` operator matches literal values/string. The `!=` operator\ + \ matches anything except the literal value/string. The `<` or `>` operators\ + \ match numerical results that are less or greater than the supplied value.\ + \ Strings containing whitespace need to be quoted with (`\"`).\n\n## Data\ + \ queries\nData queries must be a list of key-value pairs, separated by whitespace.\ + \ The set of valid keys depends on the specific query type, and is documented\ + \ in the query parameter summary. The values can be simple non-whitespace\ + \ strings, or strings enclosed by speech marks (`\"`). Depending on the key,\ + \ the value may be be a comma-delimited list of string values. Others require\ + \ numerical values.\n\n## Combinations\nMetadata queries/filters for the same\ + \ parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using\ + \ white-space to separate out the terms and operators. Parentheses `( )` can\ + \ be used for complex expressions.\n\n## Versioning\nSpecific versions of\ + \ omics data files (eg. GCT) can be queried via the useVersions parameter.\ + \ Different versions of an omics data file are associated via their CHAIN_ID\ + \ metadata value. This CHAIN_ID can be supplied to the useVersions parameter\ + \ along with the version number or specific omics data file accessions to\ + \ include them in the query. If nothing is supplied to the useVersions parameter\ + \ then only the active version (which is usually the last one imported) is\ + \ queried. This acts as a filter before the rest of the query is carried out.\n\ + \nExample usage:\nuseVersions=* (query all versions, including those without\ + \ CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second\ + \ version then the data file is not queried)\nuseVersions=v1,v0 (query the\ + \ first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3\ + \ (for omics data files with a CHAIN_ID of GSCV002 query the third version)\n\ + useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID\ + \ of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\n\ + Rules for multiple CHAIN_IDs can be supplied to the parameter using the ;\ + \ separator.\n\n## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a cursor tag. To retrieve the\ + \ next page of results please supply this cursor tag to resume the query from\ + \ your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result. To return all results iterate through\ + \ pages using cursor values until the `resultsExhausted` response field is\ + \ true.\n\n" + operationId: "omicsSearchVariantDataAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve variant data objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/group: + get: + description: "Retrieve group objects whose linked data matches all supplied\ + \ conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\ + \n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text\ + \ or metadata key-value pair)\n3. Linked variant objects (list of data key-value\ + \ pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n\ + 5. Linked any data (except variant and flow cytometry) objects (list of data\ + \ key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is; otherwise, use speech marks (`\"`) to quote queries that include\ + \ whitespace. Speech marks and backslash characters in the query need to be\ + \ escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters\ + \ are key-value pairs joined by an operator. The `=` operator matches literal\ + \ values/string. The `!=` operator matches anything except the literal value/string.\ + \ The `<` or `>` operators match numerical results that are less or greater\ + \ than the supplied value. Strings containing whitespace need to be quoted\ + \ with (`\"`).\n\n## Data queries\nData queries must be a list of key-value\ + \ pairs, separated by whitespace. The set of valid keys depends on the specific\ + \ query type, and is documented in the query parameter summary. The values\ + \ can be simple non-whitespace strings, or strings enclosed by speech marks\ + \ (`\"`). Depending on the key, the value may be be a comma-delimited list\ + \ of string values. Others require numerical values.\n\n## Combinations\n\ + Metadata queries/filters for the same parameter can be combined with `&&`,\ + \ `AND`, `||` and `OR` operators, using white-space to separate out the terms\ + \ and operators. Parentheses `( )` can be used for complex expressions.\n\n\ + ## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a cursor tag. To retrieve the next page of results please supply this\ + \ cursor tag to resume the query from your previous result and get the next\ + \ page. If there are no more results you will just retrieve an empty result.\ + \ To return all results iterate through pages using cursor values until the\ + \ `resultsExhausted` response field is true.\n\n" + operationId: "omicsSearchVariantGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n" + in: "query" + name: "studyFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all study metadata\ + \ fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching\ + \ dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "studyQuery" + schema: + type: "string" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "libraryFilter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "libraryQuery" + schema: + type: "string" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "preparationFilter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "preparationQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "vxFilter" + schema: + type: "string" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at`\ + \ or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries,\ + \ single words can be supplied as is; otherwise, use speech marks (`\"`)\ + \ to quote queries that include whitespace. \n2. It is possible to specify\ + \ a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature\ + \ attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select\ + \ all rows where the feature attribute Name_2 values are greater than or\ + \ equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature\ + \ attribute Name_3 values lie within the interval between -3 and 3. \n4.\ + \ Use substring search to get the records where the attribute field contains\ + \ the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The\ + \ first column for each original data file is identified as feature accession\ + \ (typically, it contains gene or protein names, accession IDs, etc.). Searching\ + \ by such feature accession would significantly outperform more complex\ + \ queries by combining the other feature attributes. To enable such a search,\ + \ use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`value.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\ + \ \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n\ + * `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or\ + \ C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where\ + \ Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`:\ + \ Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`:\ + \ Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A\ + \ || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A\ + \ AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is\ + \ A and either Name_2 is B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Filter by expression metadata (key-value metadata pair(s)).\ + \ E.g. `\"Genome Version\"=hg19-BROAD`." + in: "query" + name: "exFilter" + schema: + type: "string" + - description: "Search for objects linked to flow cytometry data via data query\ + \ (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"\ + CD45+, live\"` `MinValue=3.5`" + in: "query" + name: "fxQuery" + schema: + type: "string" + - description: "Filter by flow cytometry metadata (key-value metadata pair(s)).\ + \ E.g. `Organ=blood`." + in: "query" + name: "fxFilter" + schema: + type: "string" + - description: "Unique identifier (accession) of Reference Genome object." + in: "query" + name: "referenceGenomeId" + schema: + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template default template\ + \ will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/OmicsResponse" + description: "Omics query result." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve group objects by searching across multiple data types" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/variant/streamed-data: + get: + description: "Stream data from a given group for a VCF file that matches a sample\ + \ query/filter. If no query/filters are supplied all variant data is returned.\ + \ If a metadata filter is specified, this endpoint will only return variant\ + \ data that is associated with a sample via metadata attribute.\n\n## Conditions\n\ + It is possible to supply conditions for Samples (full-text or metadata key-value\ + \ pair)\n\n## Metadata full-text queries\nSingle words can be supplied as\ + \ is; otherwise, use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n" + operationId: "omicsSearchStreamedVariantDataAsUser" + parameters: + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n" + in: "query" + name: "sampleFilter" + schema: + type: "string" + - description: "Search for objects via a full-text query over all sample metadata\ + \ fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "sampleQuery" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Search for objects linked to expression data and originally\ + \ uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976\ + \ value>=1.50`\n For the case when the original data is represented by multiple\ + \ attributes per feature scenarios, extended filtering syntax is as follows:\ + \ \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at`\ + \ or `features.\"Average Mz\"=2.218`. As in the case of sample metadata\ + \ queries, single words can be supplied as is; otherwise, use speech marks\ + \ (`\"`) to quote queries that include whitespace. \n2. It is possible to\ + \ specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`.\ + \ \n3. Utilize range filters to search numeric attributes. Apply `<` (less\ + \ than), `>` (greater than), and `=` (equal to) symbols to specify the desired\ + \ ranges as follows: \n`features.Name_1 > 3`: Select all rows where the\ + \ feature attribute Name_1 values are greater than 3. \n`features.Name_2\ + \ >= 6`: Select all rows where the feature attribute Name_2 values are greater\ + \ than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where\ + \ the feature attribute Name_3 values lie within the interval between -3\ + \ and 3. \n4. Use substring search to get the records where the attribute\ + \ field contains the provided substring: `features.attribute1 =~ \"some\ + \ text\"`. \n5. The first column for each original data file is identified\ + \ as feature accession (typically, it contains gene or protein names, accession\ + \ IDs, etc.). Searching by such feature accession would significantly outperform\ + \ more complex queries by combining the other feature attributes. To enable\ + \ such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n\ + \ \nThe `value` keyword can be used to select rows where the sample (library\ + \ or preparation) measurements has values from a certain range. Examples:\ + \ `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains\ + \ multiple measurements for a single item, such as a sample (library or\ + \ preparation), use the measurement name to specify the exact column type,\ + \ e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement\ + \ attribute intensity equals 3. \n `value.intensity != 2,null`: Select all\ + \ rows where the measurement attribute intensity is not equal 2 and is not\ + \ an empty value. \n`values.p_value > 3`: Selects all rows where the measurement\ + \ attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`:\ + \ Selects all rows where the measurement attribute 'FC' values lie within\ + \ the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has\ + \ been deprecated and should be replaced with the aforementioned comparisons.\n\ + \ \nCombine multiple filters for different feature attributes and measurements\ + \ using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n\ + * `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`:\ + \ Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A\ + \ AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is\ + \ B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example\ + \ above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where\ + \ Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`:\ + \ Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B\ + \ OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is\ + \ B or minimal possible measurement value is 1.0." + in: "query" + name: "exQuery" + schema: + type: "string" + - description: "Search for objects linked to variant data by SNPs properties.\ + \ Filtering is currently supported by `filter`, `id`, `region` and `info`\ + \ keywords, as well as `exists` keyword for `INFO` field and their logical\ + \ combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators\ + \ with standard boolean precedence. Keyword case is ignored.\n * `filter`\ + \ corresponds to the `FILTER` column in the original vcf file. Could be\ + \ either equals or not equals to `PASS` : `filter = PASS` or `filter !=\ + \ pass`.\n * `id` is a string value that corresponds to the `ID` column.\ + \ Multiple values could be added via a comma. Expression `id = rs3214,rg1234`\ + \ is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds\ + \ to CHROM and POS columns. Supports querying by the whole chromosome `region\ + \ = chr1` , by interval within a chromosome `region = chr1:4567-9876543`\ + \ by exact position `region = chr1:456789` or by indefinite ranges like\ + \ `region = x:3456789-*` . Multiple regions could be separated via comma,\ + \ e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767\ + \ or region = chr3`.\n * `feature` is the name of the reference gene associated\ + \ with a specific location in the reference genome which corresponds to\ + \ the VCF file (variant group) from which the variant information is derived.\ + \ By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`,\ + \ variants located within the same genomic region as the specified gene(s)\ + \ will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all\ + \ variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)`\ + \ to exclude variants having the key from the search results. Provide `info.key=value`\ + \ pair to search for an exact match or `info.key!=value` to exclude it from\ + \ the search. Due to the limits of precision in floating point numbers,\ + \ we use a small range of 0.0000001 to identify close matches. This means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries." + in: "query" + name: "vxQuery" + schema: + type: "string" + - description: "Accession of the variant group object (VCF)" + in: "query" + name: "groupAccession" + required: true + schema: + type: "string" + responses: + "200": + content: + text/tab-separated-values: + schema: + $ref: "#/components/schemas/StreamingOutput" + description: "Stream of retrieved Variant data." + "400": + content: {} + description: "Invalid data in request. See error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Stream data from a given VCF file" + tags: + - "Omics queries as User" + /api/v1/as-user/omics/cells/analytics/cell-ratio: + post: + operationId: "cellRatioAsUser" + summary: "[BETA] Compute cell ratio statistics across groups or metadata attributes\ + \ in single-cell data." + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint calculates cell ratio statistics based on single-cell\ + \ metadata.\n\nIt allows quantifying the proportion of cells that meet specific\ + \ criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\n\ + relative to a defined reference group or the total cell population (`countAvailable`)\ + \ defined by study, samples, library, or preparation metadata.\n\n`countAvailable`\ + \ parameter returns all cells specified in study, sample, library, or preparation\ + \ queries and filters.\nIn case `exQuery` is selected, only cells linked to\ + \ cell expression will be counted in `countSelected` parameter.\n\nThe endpoint\ + \ supports filtering by study, sample, library, or preparation metadata and\ + \ filtering by cell expression or cell metadata fields.\n\nRequest and response\ + \ parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/CRRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/CRResponse" + description: "Cell ratio result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/omics/cells/analytics/differential-expression: + post: + operationId: "differentialExpressionAsUser" + summary: "[BETA] Perform differential gene expression analytics between case\ + \ and control cell groups" + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint computes differential gene expression between two\ + \ specified cell groups (case vs control) within single-cell data.\n\nConsult\ + \ `/omics` search endpoints to find description of parameters within the cell\ + \ groups.\nThe response includes per-gene metrics that characterize expression\ + \ differences between the two groups:\n- `Gene name` - gene identifier.\n\ + - `Case cell count` - number of cells expressing the gene in the case group.\n\ + - `Control cell count` - number of cells expressing the gene in the control\ + \ group.\n- `Average expression (case)` - mean expression level across case\ + \ cells.\n- `Average expression (control)` - mean expression level across\ + \ control cells.\n- `Expression difference` - numerical difference between\ + \ average expressions.\n- `Fold change` - ratio of average expressions between\ + \ case and control groups.\n- `U statistic` - Mann–Whitney U test statistic\ + \ that measures the difference between Case and Control groups.\n- `p-value`\ + \ - the probability of observing results as extreme as (or more extreme than)\ + \ those obtained, assuming that the null hypothesis is true.\n\nResults are\ + \ sorted by absolute value of fold change in descending order, allowing easy\ + \ identification of the most differentially expressed genes.\n\nRequest and\ + \ response parameters are subject to change as this feature is in BETA.\n" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/DERequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DEResponse" + description: "Differential expression result" + "400": + content: {} + description: "Entities cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/omics/cells/analytics/gene-summary: + post: + operationId: "geneSummaryAsUser" + summary: "[BETA] Compute and retrieve descriptive statistics and visual summaries\ + \ for single-cell data." + tags: + - "[BETA] Analytics omics queries as User" + description: "This endpoint provides descriptive statistical metrics for gene\ + \ expression across single-cell datasets.\nIt aggregates and summarizes expression\ + \ data for each gene to help assess variability, distribution,\nand intensity\ + \ of expression within the population of cells.\n\nThe computed metrics include:\n\ + \ - `Gene name` - gene identifier.\n - `Cell count` - number of cells with\ + \ measurable expression for each gene.\n - `Mean expression value`\n - `Median\ + \ expression value`\n - `Quantiles` - configurable expression percentiles.\n\ + \ - `Histogram (density)` - binned distribution of expression levels for\ + \ visualization.\n - `Standard deviation` - dispersion of expression values.\n\ + \ - `Minimum and maximum values` - range of expression across cells.\n\n\ + Results are sorted by gene name.\n\nRequest and response parameters are subject\ + \ to change as this feature is in BETA.\n" + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/GSRequest" + responses: + "200": + description: "Gene summary result" + content: + application/json: + schema: + $ref: "#/components/schemas/GSResponse" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token])\ + \ or Genestack API token in the `Genestack-API-Token`\nheader (this token\ + \ may be obtained from the Genestack UI _Profile_ page).\n" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\n\ + failure in the Genestack system, please file a bug report to support@genestack.com,\n\ + including the error details.\"\n" + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-user/integration/link/files/by/study/{id}: + get: + operationId: "getFilesByStudyAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Select `true` in order to include file structure (contents)\ + \ for .h5, .h5ad, .zip, .gz to the response." + in: "query" + name: "includeContents" + required: false + schema: + default: false + type: "boolean" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + text/tab-separated-values: + schema: + items: + $ref: "#/components/schemas/AFile" + type: "array" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "Object with provided accession could not be found in ODM." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve file's metadata by study ID" + tags: + - "Files integration as User" + /api/v1/jobs/import/study: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportStudy" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import study metadata from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/samples: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportSamples" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of sample metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/samples/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportSamplesMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of sample metadata objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/libraries: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportLibraries" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of library metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/libraries/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportLibrariesMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of library metadata objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/preparations: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportPreparations" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportMetadataRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of preparation metadata objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/preparations/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n" + operationId: "startImportPreparationsMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportMetadataFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of preparation metadata objects from a TSV file via\ + \ multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/cells: + post: + description: "\nThe endpoint initiates a job to import cell data and creates\ + \ a Cell Group to manage it.\n\nWhen job finishes successfully the following\ + \ **result** object can be obtained using `GET /job/{id}/output` request:\n\ + \n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\ + \n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the\ + \ request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored;\ + \ if more than 3 are provided, only the first 3 are kept and the rest are\ + \ ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** PCA component is provided, the request\ + \ is invalid.\n - At most **100** PCA components are stored; components beyond\ + \ 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length\ + \ of the embedding vector for each cell.\n- Ignoring excess dimensions/components\ + \ does not cause an error; validation errors occur only when the number is\ + \ exactly **1**.\n" + operationId: "startImportCells" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportCellsRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of cell data objects from a TSV file" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/cells/multipart: + post: + description: "\nThe endpoint initiates a job to import cell data and creates\ + \ a Cell Group to manage it.\n\nWhen job finishes successfully the following\ + \ **result** object can be obtained using `GET /job/{id}/output` request:\n\ + \n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\ + \n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the\ + \ request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored;\ + \ if more than 3 are provided, only the first 3 are kept and the rest are\ + \ ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent)\ + \ or **≥ 2**.\n - If exactly **1** PCA component is provided, the request\ + \ is invalid.\n - At most **100** PCA components are stored; components beyond\ + \ 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length\ + \ of the embedding vector for each cell.\n- Ignoring excess dimensions/components\ + \ does not cause an error; validation errors occur only when the number is\ + \ exactly **1**.\n" + operationId: "startImportCellsMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportCellsFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a group of cell data objects from a TSV file via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/expression: + post: + description: "## Data\n This operation necessitates the URL of a tabular data\ + \ file, which must be either in TSV or GCT 1.2 format. Consult the user guide\ + \ for a comprehensive understanding of the file content requirements. The\ + \ endpoint is capable of handling uploads of any data type, which can be detailed\ + \ in the parameters section, not only Gene Expression data.\n\n## Metadata\n\ + \ It is also possible to optionally supply the URL of a metadata file. This\ + \ metadata will be used as the original metadata for the created objects.\ + \ The file is expected to contain single record with metadata describing the\ + \ uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster\ + \ Text (GCT) and Tab-separated format (TSV), attribute names and record values\ + \ are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence\ + \ (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported,\ + \ treated as archives and get decompressed\n * Header: the first line is treated\ + \ as table header that contains attribute names\n * Records: the second line\ + \ contains the values for each of the attributes described in the header line.\ + \ Values represent single string or list of strings. List values are separated\ + \ using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace\ + \ before parsing, and a literal `|` (`U+007C`) character may be escaped by\ + \ repeating it twice.\n * Skip zeros in original data file: If this option\ + \ is selected, zeros in the file will be ignored, thus conserving time and\ + \ space. This option is particularly useful for handling very sparse data\ + \ such as Single Cell data." + operationId: "startImportExpression" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportExpressionSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import any tabular data from TSV or GCT files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/expression/multipart: + post: + description: "## Data\n This operation necessitates the URL of a tabular data\ + \ file, which must be either in TSV or GCT 1.2 format. Consult the user guide\ + \ for a comprehensive understanding of the file content requirements. The\ + \ endpoint is capable of handling uploads of any data type, which can be detailed\ + \ in the parameters section, not only Gene Expression data.\n\n## Metadata\n\ + \ It is also possible to optionally supply the URL of a metadata file. This\ + \ metadata will be used as the original metadata for the created objects.\ + \ The file is expected to contain single record with metadata describing the\ + \ uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster\ + \ Text (GCT) and Tab-separated format (TSV), attribute names and record values\ + \ are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence\ + \ (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported,\ + \ treated as archives and get decompressed\n * Header: the first line is treated\ + \ as table header that contains attribute names\n * Records: the second line\ + \ contains the values for each of the attributes described in the header line.\ + \ Values represent single string or list of strings. List values are separated\ + \ using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace\ + \ before parsing, and a literal `|` (`U+007C`) character may be escaped by\ + \ repeating it twice.\n * Skip zeros in original data file: If this option\ + \ is selected, zeros in the file will be ignored, thus conserving time and\ + \ space. This option is particularly useful for handling very sparse data\ + \ such as Single Cell data." + operationId: "startImportExpressionMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import any tabular data from TSV or GCT files via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/variant: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n " + operationId: "startImportVariant" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import variation data and metadata from VCF and TSV files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/variant/multipart: + post: + description: "\nWhen job finishes successfully the following **result** object\ + \ can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"\ + groupAccession\": \"GSF1234567\"\n}\n```\n " + operationId: "startImportVariantMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import variation data and metadata from VCF and TSV files via multipart/form-data\ + \ upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/flow-cytometry: + post: + description: "This operation necessitates the URL of a gated flow cytometry\ + \ data file, which must be in FACS format.\nConsult the user guide for a comprehensive\ + \ understanding of the file content requirements.\nFor flow cytometry data\ + \ in FCS format use expression endpoint.\n\nWhen job finishes successfully\ + \ the following **result** object\ncan be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```" + operationId: "startImportFlowCytometry" + parameters: + - description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to\ + \ load this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportSignalRunRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import flow-cytometry data and metadata from FACS and TSV files" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/flow-cytometry/multipart: + post: + description: "This operation necessitates the URL of a gated flow cytometry\ + \ data file, which must be in FACS format.\nConsult the user guide for a comprehensive\ + \ understanding of the file content requirements.\nFor flow cytometry data\ + \ in FCS format use expression endpoint.\n\nWhen job finishes successfully\ + \ the following **result** object\ncan be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```" + operationId: "startImportFlowCytometryMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import flow-cytometry data and metadata from FACS and TSV files via\ + \ multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/file: + post: + description: "In order to import a file as an attachment to a study, please\ + \ fill in the following fields:\n\n* `source` - The source parameter is ignored\ + \ and will be removed in version 1.61. The source is automatically extracted\ + \ from the link.\n* `dataLink` - a link to a file to import as an attachment.\n\ + The file will be associated with a study and will be searchable by its name\ + \ and metadata.\n* `metadataLink` - an optional URL of a metadata file to\ + \ be used as the original metadata\nfor the created objects. The file must\ + \ contain a single record describing the uploaded attachment.\n* `studyAccession`\ + \ - an accession of a study the file will be associated with.\n* `dataClass`\ + \ - file data class with the following possible values: `Bulk\ntranscriptomics`,\ + \ `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`,\ + \ `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n\ + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging\ + \ features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood\ + \ counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`,\ + \ `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number\ + \ alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic\ + \ screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job\ + \ finishes successfully the following **result** object can be obtained using\ + \ `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\ + \n}\n```" + operationId: "startImportAFile" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ImportAFileRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import file as an attachment" + tags: + - "Data import jobs" + x-codegen-request-body-name: "body" + /api/v1/jobs/import/file/multipart: + post: + description: "In order to import a file as an attachment to a study, please\ + \ fill in the following fields:\n\n* `data` - a file to import as an attachment.\n\ + The file will be associated with a study and will be searchable by its name\ + \ and metadata.\n* `metadata` - an optional metadata file to be used as the\ + \ original metadata\nfor the created objects. The file must contain a single\ + \ record describing the uploaded attachment.\n* `studyAccession` - an accession\ + \ of a study the file will be associated with.\n* `dataClass` - file data\ + \ class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell\ + \ transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`,\ + \ `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`,\ + \ `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel\ + \ data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\n\ + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry\ + \ (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`,\ + \ `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR\ + \ / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully\ + \ the following **result** object can be obtained using `GET /job/{id}/output`\ + \ request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```" + operationId: "startImportAFileMultipart" + requestBody: + content: + multipart/form-data: + schema: + $ref: "#/components/schemas/ImportAFileFromMultipartRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import file as an attachment via multipart/form-data upload" + tags: + - "Data import via direct file upload" + x-codegen-request-body-name: "body" + /api/v1/jobs/{jobExecId}/info: + get: + operationId: "info" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "get information about one particular job execution" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/output: + get: + operationId: "output" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Output" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "retrieve job output (result)" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/restart: + put: + operationId: "restart" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "restart stopped (failed) job" + tags: + - "Job operations" + /api/v1/jobs/{jobExecId}/stop: + put: + operationId: "stop" + parameters: + - in: "path" + name: "jobExecId" + required: true + schema: + format: "int64" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Info" + description: "successful operation" + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "stop running job" + tags: + - "Job operations" + /api/v1/as-curator/libraries: + get: + description: "Retrieve library metadata objects by searching/listing library\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages using `pageOffset`\ + \ values of `n * pageLimit` until a page returns fewer results than the page\ + \ limit, which indicates there are no more results.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all variant objects." + operationId: "searchLibrariesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for library metadata objects" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/by/group/{id}: + get: + operationId: "getLibrariesByGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve libraries related to the given group" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/{id}: + get: + operationId: "getLibraryAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateLibraryAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a library object" + tags: + - "Library SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/libraries/{id}/versions: + get: + operationId: "getLibraryVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Library SPoT as Curator" + /api/v1/as-curator/libraries/{id}/versions/{version}: + get: + operationId: "getLibraryByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as Curator" + /api/v1/as-user/libraries: + get: + description: "Retrieve library metadata objects by searching/listing library\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To retrieve all results, iterate through pages using `pageOffset`\ + \ values of `n * pageLimit` until a page returns fewer results than the page\ + \ limit, which indicates there are no more results.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all variant objects." + operationId: "searchLibrariesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by library metadata (key-value metadata pair(s)). E.g.\ + \ `\"Library Type\"=RNA-Seq-1`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for library objects via a full-text query over all library\ + \ metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary\ + \ terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for library metadata objects" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/by/group/{id}: + get: + operationId: "getLibrariesByGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve libraries related to the given group" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}: + get: + operationId: "getLibraryAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}/versions: + get: + operationId: "getLibraryVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Library SPoT as User" + /api/v1/as-user/libraries/{id}/versions/{version}: + get: + operationId: "getLibraryByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Library" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single library object by ID (accession)" + tags: + - "Library SPoT as User" + /api/v1/manage-data/detached-objects: + get: + description: "Retrieve various types of detached data objects. An object is\ + \ defined as 'detached' if it lacks any direct or indirect link to a root-level\ + \ object, which in this context is referred to as 'study'.\nStudy is considered\ + \ as detached object itself in case there are no links to objects at a lower\ + \ level.\nData with specific `detachedObjectType` can be retrieved by specifying\ + \ the types in `detachedObjectType` parameter.\nThe detached objects are sorted\ + \ according to their `detachedObjectType` and `genestack:accession`.\nSpecific\ + \ ordering can be observed in the list of supported detached types found below.\n\ + Pagination of the results can be conveniently managed using the `cursor` and\ + \ `limit` parameters.\n Supported types of detached objects (listed in the\ + \ order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n\ + \ * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n\ + \ * `FLOW_CYTOMETRY`\n\n" + operationId: "getDetachedObjects" + parameters: + - description: "Filter by detached object type. Multiple values can be used\ + \ to filter the data." + explode: true + in: "query" + name: "detachedObjectType" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "limit" + schema: + format: "int32" + type: "integer" + - description: "This parameter enables retrieval of objects starting from a\ + \ specific point.\n Currently, it represents the accession of the last obtained\ + \ object. However, please note that its functionality might change over\ + \ time, so it is advisable to consider the cursor's content as a general\ + \ string." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/DetachedCollection" + description: "Retrieved detached data." + "400": + content: {} + description: "Detached data cannot be retrieved due to Bad Request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of detached objects" + tags: + - "Manage Data" + /api/v1/manage-data/data: + delete: + description: "The objects will be marked for deletion. In case the selected\ + \ object has more than one version, the endpoint deletes all of them. The\ + \ following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n\ + \ * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n\ + \ * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n\ + \ * `FILE`\n\n Moreover, if the selected object is linked to any other data,\ + \ the endpoint will also delete the linked data associated with it according\ + \ to the specified rules:\n * If you delete a `STUDY`, the entire study with\ + \ all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP`\ + \ will result in the removal of all samples associated with this sample group,\ + \ along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`.\ + \ The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will\ + \ be deleted, even if it is linked to another metadata group.\n * Deleting\ + \ a `SAMPLE_OBJECT` will result in the removal of that sample from the study,\ + \ and it will not be displayed in the version history. If a `LIBRARY_OBJECT`\ + \ or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted\ + \ as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result\ + \ in the removal of all libraries or preparations associated with this group,\ + \ along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP`\ + \ will result in the removal of linked `TABULAR_DATA` (cell expression group).\n\ + \ * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated\ + \ data, such as links and runs will be removed from ODM.\n * If you delete\ + \ `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't\ + \ be available for linked VCF groups.\n * If you delete `FILE`, the file will\ + \ be removed from ODM." + operationId: "deleteData" + parameters: + - description: "Accessions files to be deleted." + explode: false + in: "query" + name: "accessions" + schema: + items: + type: "string" + type: "array" + style: "form" + responses: + "202": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/ManagedObject" + type: "array" + description: "The deletion of the following files and all linked data has\ + \ started." + "400": + content: {} + description: "Deletion could not be performed due to Bad Request." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method or the file is not meant\ + \ to be deleted." + "404": + content: {} + description: "Some of the provided accessions could not be found in ODM.\ + \ Deletion will not be preformed. Please review your list and repeat the\ + \ attempt." + "406": + content: {} + description: "Some of the provided accessions do not belong to the supported\ + \ object types. Deletion will not be performed. Please review your list\ + \ and repeat the attempt." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete objects from ODM" + tags: + - "Manage Data" + /api/v1/as-curator/preparations: + get: + description: "Retrieve preparation metadata objects by searching/listing preparation\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To return all results iterate through pages using pageOffset\ + \ values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all variant objects." + operationId: "searchPreparationsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for preparation metadata objects" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/by/group/{id}: + get: + operationId: "getPreparationsByGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparations related to the given group" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/{id}: + get: + operationId: "getPreparationAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updatePreparationAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a preparation object" + tags: + - "Preparation SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/preparations/{id}/versions: + get: + operationId: "getPreparationVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-curator/preparations/{id}/versions/{version}: + get: + operationId: "getPreparationByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as Curator" + /api/v1/as-user/preparations: + get: + description: "Retrieve preparation metadata objects by searching/listing preparation\ + \ metadata.\n\n## Metadata full-text queries\nSingle words can be supplied\ + \ as is, otherwise use speech marks (`\"`) to quote queries that include whitespace.\ + \ Speech marks and backslash characters in the query need to be escaped with\ + \ a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value\ + \ pairs joined by an operator. The `=` operator matches literal values/string.\ + \ The `!=` operator matches anything except the literal value/string. The\ + \ `<` or `>` operators match numerical results that are less or greater than\ + \ the supplied value. Strings containing whitespace need to be quoted with\ + \ (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter\ + \ can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space\ + \ to separate out the terms and operators. Parentheses `( )` can be used for\ + \ complex expressions.\n\n## Paging\nFor performance reasons this endpoint\ + \ returns results in \"pages\" of limited size. In order to retrieve all matching\ + \ results the client needs to request multiple pages starting from an offset\ + \ to the first result. You can do this using the pageOffset query parameter.\ + \ A value of 0 (the default) instructs the server to return the first page\ + \ of results, 100 would return a page of results starting from the 101st result\ + \ and so on. To return all results iterate through pages using pageOffset\ + \ values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\ + \n## List operation\n\nThis endpoint can be called with no `query` parameter.\ + \ Doing so returns a list of all variant objects." + operationId: "searchPreparationsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by preparation metadata (key-value metadata pair(s)).\ + \ E.g. `Digestion=Trypsin`" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for preparation objects via a full-text query over all\ + \ preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"\ + `. Queries matching dictionary terms are automatically expanded to include\ + \ synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for preparation metadata objects" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/by/group/{id}: + get: + operationId: "getPreparationsByGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve preparations related to the given group" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}: + get: + operationId: "getPreparationAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}/versions: + get: + operationId: "getPreparationVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Preparation SPoT as User" + /api/v1/as-user/preparations/{id}/versions/{version}: + get: + operationId: "getPreparationByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Preparation" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single preparation object by ID (accession)" + tags: + - "Preparation SPoT as User" + /api/v1/xrefsets: + post: + operationId: "create" + requestBody: + description: "Request body for creating a new xrefset.\n## Important:\nThe\ + \ length of 'sourceId' strings is limited to 255 characters. Ensure that\ + \ the provided values adhere to this limitation to avoid data truncation.\n" + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetCreateRequest" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetCreateResponse" + description: "successful operation" + "201": + content: {} + description: "The objects were successfully created. The returned value\ + \ is a list of created objects." + "400": + content: {} + description: "The object cannot be created. This error occurs when the supplied\ + \ data or metadata are incorrect. Please see error message for details" + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to work with the xrefset." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Import a new xrefset file" + tags: + - "Xrefset queries" + x-codegen-request-body-name: "body" + /api/v1/xrefsets/entries: + get: + description: "## Conditions\nIt is possible to supply a list of values for \"\ + targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\"\ + \ and \"sourceId\" are supplied, the following search rule is applied: (sourceId\ + \ = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId\ + \ = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to\ + \ 255 characters. Ensure that the provided values adhere to this limitation\ + \ to avoid data truncation.\n" + operationId: "searchEntries" + parameters: + - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ + \ mapping this is gene ID, e.g. \"ENSG00000146648\"" + explode: true + in: "query" + name: "sourceId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "Supply targetId in the format \"targetId\". For transcript-gene\ + \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" + explode: true + in: "query" + name: "targetId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetSearchResult" + description: "Json object with the cursor and json array of retrieved xrefset\ + \ data. Response entries are ordered by xrefset ID and then by source\ + \ ID." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of entries across all xrefsets for given sourceId\ + \ and targetId" + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}: + delete: + operationId: "deleteFile" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + pattern: ".*" + type: "string" + responses: + "204": + content: {} + description: "Xrefset file successfully marked for deletion, mappings have\ + \ been removed" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to work with the xrefset." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Delete a xrefset with all related data.\nOnly users who uploaded the\ + \ xrefset are allowed to delete it." + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}/entries: + get: + description: "## Conditions\nIt is possible to supply a list of values for \"\ + targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\"\ + \ and \"sourceId\" are supplied, the following search rule is applied: (sourceId\ + \ = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId\ + \ = \"Tm\").\n\n" + operationId: "searchEntriesWithinFile" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ + \ mapping this is gene ID, e.g. \"ENSG00000146648\"" + explode: true + in: "query" + name: "sourceId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "Supply targetId in the format \"targetId\". For transcript-gene\ + \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" + explode: true + in: "query" + name: "targetId" + schema: + items: + type: "string" + type: "array" + style: "form" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "This parameter determines the number of results to retrieve\ + \ per page, with the default set at 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetSearchResult" + description: "Json object with the cursor and json array of retrieved xrefset\ + \ data. Response entries are ordered by xrefset ID and then by source\ + \ ID." + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of entries for the given xrefset and given sourceId\ + \ and targetId" + tags: + - "Xrefset queries" + /api/v1/xrefsets/{id}/metadata: + get: + operationId: "getDetailsByAccession" + parameters: + - description: "xrefset ID" + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/XrefSetMetadata" + description: "Object containing xrefset details, including user submitted\ + \ metadata and system info" + "400": + content: {} + description: "Invalid data in the request. See the error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "The xrefset does not exist." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve xrefset details" + tags: + - "Xrefset queries" + /api/v1/reference-genomes: + get: + operationId: "search_reference_genomes" + summary: "List or search for Reference Genome objects" + tags: + - "Reference genome" + description: "Retrieve Reference Genome metadata objects by searching/listing\ + \ Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words\ + \ can be supplied as is, otherwise use speech marks (`\"`) to quote queries\ + \ that include whitespace. Speech marks and backslash characters in the query\ + \ need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance\ + \ reasons, this endpoint returns results in \"pages\" of limited size. In\ + \ order to retrieve all matching results the client needs to request multiple\ + \ pages starting from an offset to the first result. You can do this using\ + \ the `pageOffset` query parameter. A value of 0 (the default) instructs the\ + \ server to return the first page of results, 100 would return a page of results\ + \ starting from the 101st result and so on. To retrieve all results, iterate\ + \ through pages by increasing the offset in multiples of limit (e.g., `offset\ + \ = n * limit`), until all results have been retrieved. The total number of\ + \ pages can be calculated by dividing the total number of results by the limit.\n\ + \n## List operation\n\nThis endpoint can be called without any query parameters.\ + \ When called this way, it returns a list of all Reference Genome objects." + parameters: + - in: "query" + name: "organism" + description: "Scientific name of an organism (species) used in reference genome\ + \ file (e.g. `Homo sapiens`)." + schema: + type: "string" + - in: "query" + name: "assembly" + description: "Major version (for example, `GRCh38`)." + schema: + type: "string" + - in: "query" + name: "release" + description: "Ensembl reference genome minor version (for example, `75` or\ + \ `109`)." + schema: + type: "string" + - in: "query" + name: "query" + description: "Search for reference genome via a full-text query over all reference\ + \ genome metadata fields (e.g. `GRCh38`)." + schema: + type: "string" + - in: "query" + name: "pageLimit" + description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + schema: + format: "int32" + type: "integer" + - in: "query" + name: "pageOffset" + description: "Show the page {pageOffset + 1} results from the start of the\ + \ results. E.g. 100 will show a page of results starting from the 101st\ + \ result. The default value is 0." + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + post: + operationId: "upload" + summary: "Upload reference genome to ODM" + tags: + - "Reference genome" + description: "In order to import reference genome file, please fill in the following\ + \ fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any\ + \ custom reference genome in .gtf format, archived in `.gz` format.\nNote:\ + \ if any of the parameters below are not corresponding to the available Ensembl\ + \ data (for example, organism name or assembly is changed), the link must\ + \ be provided.\n* `organism` - scientific name (default: Homo sapiens). Please\ + \ see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\n\ + Note: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.)\ + \ please see the species folders name in the Ensembl FTP (release 113) to\ + \ provide the same organism name as shown in the list.\n* `assembly` - major\ + \ version (for example, `GRCh38`). Please see the list of available assemblies\ + \ [here](https://www.ensembl.org/info/website/archives/assembly.html).\n*\ + \ `release` - Ensembl reference genome minor version (for example, `75` or\ + \ `109`).\n* `name` - customized reference genome title that is used for linkage\ + \ variant files.\nBy default is combined from species, assembly and release\ + \ parameters: `{species} reference genome {assembly}.{release}`.\n\nReference\ + \ genome will be available after initialisation. Please track initialisation\ + \ task status." + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/UploadRGRequest" + required: false + responses: + "201": + content: + application/json: + schema: + $ref: "#/components/schemas/AccessionResponse" + description: "The object was successfully created." + "400": + content: {} + description: "The object cannot be created. This error occurs when the supplied\ + \ data or metadata are incorrect. Please see error message for details." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Not enough permissions to call method." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + x-codegen-request-body-name: "body" + /api/v1/reference-genomes/{id}: + get: + operationId: "get_reference_genome_by_accession" + summary: "Retrieve a single Reference Genome object by ID (accession)" + tags: + - "Reference genome" + parameters: + - in: "path" + name: "id" + description: "Unique identifier (Genestack accession) of Reference Genome\ + \ object." + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RGItem" + description: "The request was successful. The returned value is the object." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + /api/v1/as-curator/samples: + get: + description: "Retrieve sample metadata objects by searching/listing sample metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n*pageLimit` until\ + \ the `resultsExhausted` response field is true.\n\n## List operation\n\n\ + This endpoint can be called with no `query` parameter. Doing so returns a\ + \ list of all variant objects." + operationId: "searchSamplesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for sample objects via a full-text query over all sample\ + \ metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for sample metadata objects" + tags: + - "Sample SPoT as Curator" + /api/v1/as-curator/samples/{id}: + get: + operationId: "getSampleAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateSampleAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a sample object" + tags: + - "Sample SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/samples/{id}/versions: + get: + operationId: "getSampleVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Sample SPoT as Curator" + /api/v1/as-curator/samples/{id}/versions/{version}: + get: + operationId: "getSampleByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as Curator" + /api/v1/as-user/samples: + get: + description: "Retrieve sample metadata objects by searching/listing sample metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n*pageLimit` until\ + \ the `resultsExhausted` response field is true.\n\n## List operation\n\n\ + This endpoint can be called with no `query` parameter. Doing so returns a\ + \ list of all variant objects." + operationId: "searchSamplesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by sample metadata (key-value metadata pair(s)). E.g.\ + \ `\"Species or strain\"=\"Homo sapiens\"`\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for sample objects via a full-text query over all sample\ + \ metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are\ + \ automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for sample metadata objects" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}: + get: + operationId: "getSampleAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}/versions: + get: + operationId: "getSampleVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Sample SPoT as User" + /api/v1/as-user/samples/{id}/versions/{version}: + get: + operationId: "getSampleByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Sample" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single sample object by ID (accession)" + tags: + - "Sample SPoT as User" + /api/v1/scim/Groups: + get: + description: "The endpoint returns a list of groups that the user has access\ + \ to: where the user is a member of the group or if the user has the \"Manage\ + \ Groups\" permission, then a list of all groups.\n The list can be filtered\ + \ by group attributes using the filter parameter. If no filtering parameters\ + \ are passed, then all available groups are returned. If there are no groups\ + \ in the response body, the endpoint returns 200 OK." + operationId: "findGroups" + parameters: + - description: "Filter by group attributes. The parameter name is case-sensitive,\ + \ therefore parameters FILTER, fiLter, and other options are ignored.\n\ + \ Supported operators:\n   eq - equal, the attribute and operator\ + \ values must be identical for a match;\n   Using other operators\ + \ returns an error.\n Groups can be filtered by displayName only.\n Attribute\ + \ names and attribute operators used in filters are case insensitive.\n\ + \ Examples of the request:\n   filter=displayName eq \"Curator\"\ + ." + in: "query" + name: "filter" + schema: + type: "string" + - description: "If excludedAttributes=members is specified in the request, groups\ + \ are returned without the members attribute. Other attributes are not supported\ + \ in excludedAttributes parameter and ignored in the request → all attributes\ + \ are returned in the response body." + in: "query" + name: "excludedAttributes" + schema: + type: "string" + - description: "The 1-based index of the first result in the current set of\ + \ list results." + in: "query" + name: "startIndex" + schema: + format: "int32" + type: "integer" + - description: "The number of resources returned in a list response page. The\ + \ value by default is 100." + in: "query" + name: "count" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/FilterGroupsResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Incorrect syntax in the request. See the error message for\ + \ details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of available groups" + tags: + - "Groups" + post: + description: "The endpoint creates a new user group in ODM. The endpoint does\ + \ not update an existing group. A user who calls the endpoint is added to\ + \ the group automatically with the \"Group admin\" role. The \"members\" attribute\ + \ in the request body must be empty, otherwise the endpoint returns an error.\n\ + \ The endpoint does not require any user permission.\n The endpoint does not\ + \ check the uniqueness of the group name. The user can create any number of\ + \ groups with the same name.\n If there are attributes in the request body\ + \ that ODM does not support, then ODM ignores them." + operationId: "createGroup" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/Group" + required: true + responses: + "201": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/GroupResponse" + description: "The operation is successful. The response body contains the\ + \ representation of the newly created group." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "409": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, data conflict. See the error\ + \ message for details." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Add a new user group" + tags: + - "Groups" + x-codegen-request-body-name: "body" + /api/v1/scim/Groups/{id}: + delete: + description: "The endpoint deletes a group in ODM. The group can be deleted,\ + \ even if it has members: admins and not admins. Users of this group are not\ + \ deactivated.\n Permissions to call the endpoint:\n   - If the\ + \ user does not have the \"Manage groups\" permission:\n     *\ + \ the user has \"Group admin\" role - the user can delete the group;\n     *\ + \ the user has \"Group member\" role - the group can not be deleted, an error\ + \ is returned;\n     * the user is not a member of the\ + \ specified group - the group can not be deleted, an error is returned.\n\ + \   - If the user has the \"Manage groups\" permission - the user\ + \ can delete the group regardless of user’s membership in this group." + operationId: "deleteGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "The group has been successfully removed. No data is returned." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied group ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Group admin\" role in the\ + \ group or the \"Manage groups\" permission is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Delete a group" + tags: + - "Groups" + get: + description: "The endpoint returns a not deleted group by id, where id is an\ + \ internal group id in ODM. Access to the group is required:\n   -\ + \ If the user has the \"Manage groups\" permission, the endpoint returns not\ + \ deleted group on the instance regardless of user’s membership in this group;\n\ + \   - If the user does not have the \"Manage groups\" permission,\ + \ the endpoint returns only groups in which the user is a member. Otherwise,\ + \ 404 Not Found is returned." + operationId: "getGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "If excludedAttributes=members is specified in the request, Groups\ + \ are returned without the members attribute. Other attributes are not supported\ + \ in excludedAttributes parameter and ignored in the request → all attributes\ + \ are returned in the response body." + in: "query" + name: "excludedAttributes" + schema: + type: "string" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/GroupResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied group ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no available groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a group by id" + tags: + - "Groups" + patch: + description: "The endpoint updates one or several attributes of a specific group,\ + \ where id is internal group id in ODM. Also the endpoints adds a new user\ + \ to the group and removes users from the group.\n\n Supported operators in\ + \ the request body: replace, add, remove. For details of the syntax of using\ + \ these operators, we recommend that you refer to the SCIM 2.0 specification.\n\ + \n The list of group attributes that can be edited: displayName, externalId,\ + \ members. If the user tries to edit other attributes, e.g. id, an error is\ + \ returned. If the user tries to edit attributes that are not supported in\ + \ the ODM group scheme, this attribute is ignored. If the request body includes\ + \ only attributes that are not supported by ODM, the endpoint returns 200\ + \ OK.\n\n A PATCH request, regardless of the number of operations, is treated\ + \ as atomic. If a single operation encounters an error condition, the original\ + \ user attributes are restored, and a failure status is returned.\n\n The\ + \ endpoint requires access to the group as admin of the group: the user has\ + \ the \"Admin group\" role in the group or the user has the \"Manage groups\"\ + \ permission." + operationId: "patchGroup" + parameters: + - description: "String, unique identifier of the group in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/GroupPatch" + required: true + responses: + "204": + content: {} + description: "Group is successfully updated. No data is returned" + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be updated, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Group admin\" role in the\ + \ group or the \"Manage groups\" permission is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no groups with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Update a group" + tags: + - "Groups" + x-codegen-request-body-name: "body" + /api/v1/scim/Users: + get: + description: "The endpoint returns a list of active users. The list can be filtered\ + \ by user attributes using the filter parameter. If no filtering parameters\ + \ are passed, then all users are returned. If there are no users in the response\ + \ body, the endpoint returns 200 OK. The \"Manage organization\" permission\ + \ is required." + operationId: "findUsers" + parameters: + - description: "Filter by user attributes. The parameter name is case-sensitive,\ + \ therefore parameters FILTER, fiLter, and other options are ignored.\n\ + \ Supported operators:\n   eq - equal, the attribute and operator\ + \ values must be identical for a match;\n   and - logical \"and\"\ + , the filter is only a match if both expressions evaluate to true;\n   Using\ + \ other operators returns an error.\n Attribute names and attribute operators\ + \ used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type\ + \ eq \"work\" and value eq \"user@example.com\"] - returns a user with login\ + \ = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type\ + \ eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\"\ + ." + in: "query" + name: "filter" + schema: + type: "string" + - description: "The 1-based index of the first result in the current set of\ + \ list results." + in: "query" + name: "startIndex" + schema: + format: "int32" + type: "integer" + - description: "The number of resources returned in a list response page. The\ + \ value by default is 100." + in: "query" + name: "count" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/FilterUsersResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Incorrect syntax in the request. See the error message for\ + \ details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of all active users" + tags: + - "Users" + post: + description: "The endpoint creates a new user in ODM or updates the existing\ + \ user. A user can be updated by this endpoint if the user has the same login\ + \ as in the request body. The \"Manage organization\" permission is required.\ + \ The endpoint does not allow to specify the user's password and user permissions,\ + \ these parameters can be set in the web application by a user with the \"\ + Manage organization\" permission.\n Only one email can be specified." + operationId: "createUser" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/User" + required: true + responses: + "201": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "The operation is successful. The response body contains the\ + \ representation of the newly created or updated user." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "409": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be created, data conflict. See the error\ + \ message for details." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Add a new user" + tags: + - "Users" + x-codegen-request-body-name: "body" + /api/v1/scim/Users/{id}: + delete: + operationId: "deleteUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "204": + content: {} + description: "The user has been successfully deactivated. No data is returned." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied user ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Deactivate a user" + tags: + - "Users" + get: + description: "The endpoint returns an active user by id, where id is internal\ + \ user id in ODM. The \"Manage organization\" permission is required." + operationId: "getUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "The request was successful." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The supplied user ID is invalid." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no available users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a user by id" + tags: + - "Users" + patch: + description: "The endpoint updates one or several attributes of a specific user,\ + \ where id is internal user id in ODM.\n\n Supported operators in the request\ + \ body: replace, add, remove. For details of the syntax of using these operators,\ + \ we recommend that you refer to the SCIM 2.0 specification.\n\n The list\ + \ of user attributes that can be edited: userName, externalId, displayName,\ + \ active. If the user tries to edit other attributes, e.g. id, an error is\ + \ returned. If the user tries to edit attributes that are not supported in\ + \ the ODM user scheme, e.g. name name.familyName, this attribute is ignored.\ + \ If the request body includes only attributes that are not supported by ODM,\ + \ the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number\ + \ of operations, is treated as atomic. If a single operation encounters an\ + \ error condition, the original user attributes are restored, and a failure\ + \ status is returned.\n\n It is possible to update attributes of the deactivated\ + \ users.\n\n The endpoint requires the \"Manage organization\" permission." + operationId: "patchUser" + parameters: + - description: "String, unique identifier of the user in ODM." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/UserPatch" + required: true + responses: + "200": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/UserResponse" + description: "User is successfully updated. The response body contains the\ + \ representation of the updated user." + "400": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "The object cannot be updated, the supplied data or metadata\ + \ are incorrect. See the error message for details." + "401": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "Operation is not permitted. The \"Manage organization\" permission\ + \ is required." + "404": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/SCIMErrorResponse" + description: "There are no users with the specified id." + "500": + content: + application/scim+json: + schema: + $ref: "#/components/schemas/BaseErrorResponse" + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Genestack-API-Token: [] + - Access-token: [] + summary: "Update a user" + tags: + - "Users" + x-codegen-request-body-name: "body" + /api/v1/as-curator/studies: + get: + description: "Retrieve study metadata objects by searching/listing study metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n * pageLimit`\ + \ until the `resultsExhausted` response field is true.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all study objects." + operationId: "searchStudiesAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study objects via a full-text query over all study\ + \ metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries\ + \ matching dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for study metadata objects" + tags: + - "Study SPoT as Curator" + /api/v1/as-curator/studies/{id}: + get: + operationId: "getStudyAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as Curator" + patch: + description: "## Basic operation\nThe object metadata is updated using the supplied\ + \ map of attribute names to attribute values. There are three cases:\n1. The\ + \ attribute name does not already exist in the object metadata. In this case,\ + \ the attribute and value are added to the object metadata.\n2. The attribute\ + \ name already exists in the object metadata. In this case, the value is updated.\n\ + 3. The attribute value is `null`.In this case, the attribute is removed from\ + \ the object metadata.\n\n## Attribute values\nThe attribute values are intelligently\ + \ parsed as booleans, integers, etc." + operationId: "updateStudyAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/MetadataContent" + description: "Metadata in the form of `{key: value, key2: value2, ...}`" + required: false + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The objects was successfully created. The returned value is\ + \ the updated object, along with any warnings." + "400": + content: {} + description: "The supplied object ID or metadata is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Update a study object" + tags: + - "Study SPoT as Curator" + x-codegen-request-body-name: "body" + /api/v1/as-curator/studies/{id}/versions: + get: + operationId: "getStudyVersionsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Study SPoT as Curator" + /api/v1/as-curator/studies/{id}/versions/{version}: + get: + operationId: "getStudyByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as Curator" + /api/v1/as-user/studies: + get: + description: "Retrieve study metadata objects by searching/listing study metadata.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Paging\nFor performance reasons this endpoint returns results in \"pages\"\ + \ of limited size. In order to retrieve all matching results the client needs\ + \ to request multiple pages starting from an offset to the first result. You\ + \ can do this using the pageOffset query parameter. A value of 0 (the default)\ + \ instructs the server to return the first page of results, 100 would return\ + \ a page of results starting from the 101st result and so on. To return all\ + \ results iterate through pages using pageOffset values of `n * pageLimit`\ + \ until the `resultsExhausted` response field is true.\n\n## List operation\n\ + \nThis endpoint can be called with no `query` parameter. Doing so returns\ + \ a list of all study objects." + operationId: "searchStudiesAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by study metadata (key-value metadata pair(s)). E.g.\ + \ `\"Study Source\"=ArrayExpress`\n\n\n" + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for study objects via a full-text query over all study\ + \ metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries\ + \ matching dictionary terms are automatically expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Attribute to sort by, with optional ascending/descending marker,\ + \ of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending\ + \ sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID\ + \ in ascending order." + in: "query" + name: "sort" + schema: + enum: + - "id" + - "creation" + - "last_update" + - "name" + - "+id" + - "+creation" + - "+last_update" + - "+name" + - "-id" + - "-creation" + - "-last_update" + - "-name" + type: "string" + - description: "Maximum number of results to return. This value must be between\ + \ 0 and 2000 (inclusive)." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + text/tab-separated-values: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "List or search for study metadata objects" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}: + get: + operationId: "getStudyAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}/versions: + get: + operationId: "getStudyVersionsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of object versions by ID" + tags: + - "Study SPoT as User" + /api/v1/as-user/studies/{id}/versions/{version}: + get: + operationId: "getStudyByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/Study" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single study object by ID (accession)" + tags: + - "Study SPoT as User" + /api/v1/tasks/publish-versions: + post: + description: "This endpoint publishes all information from drafts and creates\ + \ new metadata versions for each study/associated objects with unpublished\ + \ changes. Only curators with the ACCESS_ALL_DATA permission can use this\ + \ method." + operationId: "publishAllStudies" + parameters: + - description: "Supply text to name this version. If not supplied the version\ + \ name is set to “Auto-published by API call”" + in: "query" + name: "versionMessage" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "403": + content: {} + description: "Forbidden" + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Asynchronous task that publishes all pending versions across all studies\ + \ in the instance." + tags: + - "Tasks API" + /api/v1/tasks/{id}: + get: + description: "Supply the accession (id) of an ODM task to retrieve metadata\ + \ about that task." + operationId: "getTaskInfo" + parameters: + - description: "Accession of the task." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/TaskInfo" + description: "Task information." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve information about any ODM task." + tags: + - "Tasks API" + /api/v1/as-curator/variants: + get: + description: "Retrieve all variant data and metadata objects that match a query.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getAllVariantsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify a chromosome interval to find genes between these positions.\ + \ E.g. `2:233364596-233385916`. Multiple intervals can be provided as a\ + \ list." + in: "query" + name: "variantRegion" + schema: + items: + type: "string" + example: "2:233364596-233385916" + type: "array" + style: "form" + - description: "Specify the name of the reference gene associated with a specific\ + \ location in the reference genome which corresponds to the VCF file (variant\ + \ group) from which the variant information is derived. By providing the\ + \ gene name, such as `TP53`, variants located within the same genomic region\ + \ as the specified gene will be retrieved. Multiple genes can be provided\ + \ as a list." + in: "query" + name: "variantFeature" + schema: + items: + type: "string" + example: "ENSG00000227232" + type: "array" + style: "form" + - description: "One or more specific variation IDs can be specified. E.g. `rs838705`" + in: "query" + name: "variantId" + schema: + items: + type: "string" + example: "rs334" + type: "array" + style: "form" + - description: "The parameter allows to retrieve gene variants based on the\ + \ filters defined in the vcf file. If not specified, all variants are returned.\n\ + \n 1. pass - return gene variants which passed all filters\n 2. noPass\ + \ - return gene variants which failed one or more filters" + in: "query" + name: "variantFilter" + schema: + enum: + - "pass" + - "noPass" + type: "string" + - description: "Filter by vcf `INFO` fields. E.g. to filter all variants annotated\ + \ in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants\ + \ having the key from the search results.\nProvide `info.key=value` pair\ + \ to search for an exact match or `info.key!=value` to exclude it from the\ + \ search.\nDue to the limits of precision in floating point numbers, we\ + \ use a small range of 0.0000001 to identify close matches.\nThis means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries.\nCombine multiple filters for `INFO`\ + \ fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses" + in: "query" + name: "variantInfo" + schema: + type: "string" + - description: "Autogenerated numeric ID that corresponds to a column and is\ + \ used to link data from the same run to a sample. Multiple values can be\ + \ provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample is\ + \ related. Multiple values can be provided as a list to retrieve data from\ + \ multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantResponse" + description: "Retrieved variant data." + "400": + content: {} + description: "Variant data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple variant data and metadata objects" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To return all results iterate through pages\ + \ using pageOffset values of `n*pageLimit` until the `resultsExhausted` response\ + \ field is true.\n\n## List operation\n\nThis endpoint can be called with\ + \ no `query` parameter. Doing so returns a list of all data objects." + operationId: "searchGroupsAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group/by/run/{id}: + get: + operationId: "getVariantGroupByRunAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/group/{id}: + get: + operationId: "getVariantGroupAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant group by ID (groupId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchVariantRunsAsCurator" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}: + get: + operationId: "getVariantAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by ID (itemId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}/versions: + get: + operationId: "getVariantVersionsAsCurator" + parameters: + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of variant object versions by run ID (runId)" + tags: + - "Variant SPoT as Curator" + /api/v1/as-curator/variants/{id}/versions/{version}: + get: + operationId: "getVariantByVersionAsCurator" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the variant object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by run ID and its version" + tags: + - "Variant SPoT as Curator" + /api/v1/as-user/variants: + get: + description: "Retrieve all variant data and metadata objects that match a query.\n\ + \n## Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size together\ + \ with a `cursor` tag. To retrieve the next page of results please supply\ + \ this `cursor` tag to resume the query from your previous result and get\ + \ the next page. If there are no more results you will just retrieve an empty\ + \ result.\n\n" + operationId: "getAllVariantsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "Specify a chromosome interval to find genes between these positions.\ + \ E.g. `2:233364596-233385916`. Multiple intervals can be provided as a\ + \ list." + in: "query" + name: "variantRegion" + schema: + items: + type: "string" + example: "2:233364596-233385916" + type: "array" + style: "form" + - description: "Specify the name of the reference gene associated with a specific\ + \ location in the reference genome which corresponds to the VCF file (variant\ + \ group) from which the variant information is derived. By providing the\ + \ gene name, such as `TP53`, variants located within the same genomic region\ + \ as the specified gene will be retrieved. Multiple genes can be provided\ + \ as a list." + in: "query" + name: "variantFeature" + schema: + items: + type: "string" + example: "ENSG00000227232" + type: "array" + style: "form" + - description: "One or more specific variation IDs can be specified. E.g. `rs838705`" + in: "query" + name: "variantId" + schema: + items: + type: "string" + example: "rs334" + type: "array" + style: "form" + - description: "The parameter allows to retrieve gene variants based on the\ + \ filters defined in the vcf file. If not specified, all variants are returned.\n\ + \n 1. pass - return gene variants which passed all filters\n 2. noPass\ + \ - return gene variants which failed one or more filters" + in: "query" + name: "variantFilter" + schema: + enum: + - "pass" + - "noPass" + type: "string" + - description: "Filter by vcf `INFO` fields. E.g. to filter all variants annotated\ + \ in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants\ + \ having the key from the search results.\nProvide `info.key=value` pair\ + \ to search for an exact match or `info.key!=value` to exclude it from the\ + \ search.\nDue to the limits of precision in floating point numbers, we\ + \ use a small range of 0.0000001 to identify close matches.\nThis means\ + \ any differences smaller than that won't be detected. For more precise\ + \ results, please use range queries.\nCombine multiple filters for `INFO`\ + \ fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses" + in: "query" + name: "variantInfo" + schema: + type: "string" + - description: "Autogenerated numeric ID that corresponds to a column and is\ + \ used to link data from the same run to a sample. Multiple values can be\ + \ provided as a list." + in: "query" + name: "runFilter" + schema: + $ref: "#/components/schemas/RunFilter" + style: "form" + - description: "Column name from the file to which all data for a sample is\ + \ related. Multiple values can be provided as a list to retrieve data from\ + \ multiple columns." + explode: true + in: "query" + name: "runSourceFilter" + schema: + items: + type: "string" + example: "Run Source ID" + type: "array" + style: "form" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantResponse" + description: "Retrieved variant data." + "400": + content: {} + description: "Variant data cannot be retrieved." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve multiple variant data and metadata objects" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group: + get: + description: "Retrieve all group metadata objects that match a query.\n\n##\ + \ Metadata full-text queries\nSingle words can be supplied as is, otherwise\ + \ use speech marks (`\"`) to quote queries that include whitespace. Speech\ + \ marks and backslash characters in the query need to be escaped with a backslash\ + \ (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined\ + \ by an operator. The `=` operator matches literal values/string. The `!=`\ + \ operator matches anything except the literal value/string. The `<` or `>`\ + \ operators match numerical results that are less or greater than the supplied\ + \ value. Strings containing whitespace need to be quoted with (`\"`).\n\n\ + ## Combinations\nMetadata queries/filters for the same parameter can be combined\ + \ with `&&`, `AND`, `||` and `OR` operators, using white-space to separate\ + \ out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\ + \n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried\ + \ via the useVersions parameter. Different versions of an omics data file\ + \ are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied\ + \ to the useVersions parameter along with the version number or specific omics\ + \ data file accessions to include them in the query. If nothing is supplied\ + \ to the useVersions parameter then only the active version (which is usually\ + \ the last one imported) is queried. This acts as a filter before the rest\ + \ of the query is carried out.\n\nExample usage:\nuseVersions=* (query all\ + \ versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the\ + \ second version. If there is no second version then the data file is not\ + \ queried)\nuseVersions=v1,v0 (query the first version and any data files\ + \ without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with\ + \ a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496\ + \ (for omics data files with a CHAIN_ID of GSCV002 query only the specific\ + \ accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be\ + \ supplied to the parameter using the ; separator.\n\n## Paging\nFor performance\ + \ reasons this endpoint returns results in \"pages\" of limited size. In order\ + \ to retrieve all matching results the client needs to request multiple pages\ + \ starting from an offset to the first result. You can do this using the pageOffset\ + \ query parameter. A value of 0 (the default) instructs the server to return\ + \ the first page of results, 100 would return a page of results starting from\ + \ the 101st result and so on. To return all results iterate through pages\ + \ using pageOffset values of `n*pageLimit` until the `resultsExhausted` response\ + \ field is true.\n\n## List operation\n\nThis endpoint can be called with\ + \ no `query` parameter. Doing so returns a list of all data objects." + operationId: "searchVariantGroupsAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Filter by variant metadata (key-value metadata pair(s)). E.g.\ + \ `\"Variant Source\"=dbSNP`." + in: "query" + name: "filter" + schema: + type: "string" + - description: "Search for variant objects via a full text query over all variant\ + \ metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically\ + \ expanded to include synonyms." + in: "query" + name: "query" + schema: + type: "string" + - description: "If the full-text query term is present in an ODM dictionary,\ + \ enabling this parameter will modify the query to include child terms of\ + \ the full-text query.\n\nFor example, the search query \"Body fluid\" can\ + \ be expanded to include the term \"Blood\" (a child term of \"Body fluid\"\ + ) so files containing either \"Body fluid\" or \"Blood\" in their metadata\ + \ will be returned in the search results.\n\nThe parent-child relationship\ + \ is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\ + \nIf the full query term is not present in a dictionary then this parameter\ + \ has no effect." + in: "query" + name: "searchSpecificTerms" + schema: + type: "boolean" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + - description: "Specify which versions of omics data files are used in the query.\ + \ By default the active version is used. See Versioning above. Syntax:\n\ + \n\\* or `v` or ``:`v` or ``:``" + in: "query" + name: "useVersions" + schema: + type: "string" + - description: "Show the page {pageOffset+1} results from the start of the results.\ + \ E.g. 100 will show a page of results starting from the 101st result.\ + \ The default value is 0." + in: "query" + name: "pageOffset" + schema: + format: "int32" + type: "integer" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/ListResponse" + description: "The request was successful. The returned value is a list of\ + \ objects." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve groups that match a query" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group/by/run/{id}: + get: + operationId: "getVariantGroupByRunAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Unique identifier (runId) of the run." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single group object by run ID (runId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/group/{id}: + get: + operationId: "getVariantGroupAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant group identifier (groupId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantMetadataWithId" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant group by ID (groupId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/runs/by/group/{id}: + get: + description: "## Paging\nFor performance reasons this endpoint returns results\ + \ in \"pages\" of limited size together with a `cursor` tag. To retrieve the\ + \ next page of results please supply this `cursor` tag to resume the query\ + \ from your previous result and get the next page. If there are no more results\ + \ you will just retrieve an empty result.\n\n" + operationId: "searchVariantRunsAsUser" + parameters: + - description: "Unique identifier (accession) of the object." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The page tag to resume results from (see paging above)." + in: "query" + name: "cursor" + schema: + type: "string" + - description: "Maximum number of results to return per page (see Paging above).\ + \ This value must be between 0 and 2000 (inclusive). The default is 2000." + in: "query" + name: "pageLimit" + schema: + format: "int32" + type: "integer" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/RunsResponse" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve run objects related to the given group" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}: + get: + operationId: "getVariantAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object unique identifier (itemId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VariantItem" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by ID (itemId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}/versions: + get: + operationId: "getVariantVersionsAsUser" + parameters: + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + responses: + "200": + content: + application/json: + schema: + items: + $ref: "#/components/schemas/CommitInfo" + type: "array" + description: "The request was successful. The returned value is the list\ + \ of object versions." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a list of variant object versions by run ID (runId)" + tags: + - "Variant SPoT as User" + /api/v1/as-user/variants/{id}/versions/{version}: + get: + operationId: "getVariantByVersionAsUser" + parameters: + - description: "Supply this parameter with the value `term_id` as part of the\ + \ query to return extended information including IDs for values and dictionaries." + in: "query" + name: "responseFormat" + schema: + $ref: "#/components/schemas/ResponseFormat" + - description: "Variant object run ID (runId)." + in: "path" + name: "id" + required: true + schema: + type: "string" + - description: "Unique version of the variant object." + in: "path" + name: "version" + required: true + schema: + type: "string" + - description: "The parameter defines amount of metadata attributes to return:\n\ + \n1. `minimal_data` - return metadata attributes according to the default\ + \ template.\n2. `extended_data_included` - return metadata attributes according\ + \ to applied template, if object doesn’t have applied template, default\ + \ template will be used. This is the default for User endpoints.\n3. `original_data_included`\ + \ - return all metadata attributes with values and null attributes, if they\ + \ are present in the applied template. This is the default for Curator endpoints." + in: "query" + name: "returnedMetadataFields" + schema: + enum: + - "minimal_data" + - "extended_data_included" + - "original_data_included" + type: "string" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SignalRun" + description: "The request was successful. The returned value is the object." + "400": + content: {} + description: "The supplied object ID is invalid." + "401": + content: {} + description: "User is not authenticated. Please supply a valid Access Token\ + \ in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n\ + \ or Genestack API token in the `Genestack-API-Token` header (this token\ + \ may be obtained from the Genestack UI _Profile_ page)." + "404": + content: {} + description: "No object exists with the given ID." + "500": + content: {} + description: "An internal server error occurred. This indicates an unexpected\ + \ failure in the Genestack system, please file a bug report to support@genestack.com,\ + \ including the error details." + security: + - Access-token: [] + - Genestack-API-Token: [] + summary: "Retrieve a single variant object by run ID and its version" + tags: + - "Variant SPoT as User" +components: + schemas: + Cell: + $ref: "./schemas/cell/Cell.yaml" + CellListResponse: + $ref: "./schemas/cell/CellListResponse.yaml" + CommitInfo: + $ref: "./schemas/common/CommitInfo.yaml" + ExpressionItem: + $ref: "./schemas/expression/ExpressionItem.yaml" + ExpressionResponse: + $ref: "./schemas/expression/ExpressionResponse.yaml" + IntegrationHelper: + $ref: "./schemas/common/IntegrationHelper.yaml" + ListResponse: + $ref: "./schemas/common/ListResponse.yaml" + MetaResponse: + $ref: "./schemas/common/MetaResponse.yaml" + MetadataContent: + $ref: "./schemas/common/MetadataContent.yaml" + MetadataWithId: + $ref: "./schemas/common/MetadataWithId.yaml" + PaginationInfo: + $ref: "./schemas/common/PaginationInfo.yaml" + RunFilter: + $ref: "./schemas/common/RunFilter.yaml" + RunsResponse: + $ref: "./schemas/common/RunsResponse.yaml" + ResponseFormat: + $ref: "./schemas/common/ResponseFormat.yaml" + SignalRun: + $ref: "./schemas/common/SignalRun.yaml" + AFile: + $ref: "./schemas/afile/AFile.yaml" + FlowCytometryItem: + $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" + FlowCytometryResponse: + $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + AttributeInvalidValue: + $ref: "./schemas/integration/AttributeInvalidValue.yaml" + AttributeValidationSummary: + $ref: "./schemas/integration/AttributeValidationSummary.yaml" + BatchOfIds: + $ref: "./schemas/integration/BatchOfIds.yaml" + DataItem: + $ref: "./schemas/integration/DataItem.yaml" + DataPresentation: + $ref: "./schemas/integration/DataPresentation.yaml" + GroupValidationSummary: + $ref: "./schemas/integration/GroupValidationSummary.yaml" + IMetadata: + $ref: "./schemas/integration/IMetadata.yaml" + Library: + $ref: "./schemas/library/Library.yaml" + Link: + $ref: "./schemas/integration/Link.yaml" + MetadataPresentation: + $ref: "./schemas/integration/MetadataPresentation.yaml" + OmicsResponse: + $ref: "./schemas/integration/OmicsResponse.yaml" + OmicsResponseDataPresentation: + $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" + OmicsResponseMetadataPresentation: + $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + OmicsResponseMetadataWithId: + $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" + Preparation: + $ref: "./schemas/preparation/Preparation.yaml" + Relationships: + $ref: "./schemas/integration/Relationships.yaml" + SourceTypePair: + $ref: "./schemas/integration/SourceTypePair.yaml" + StreamingOutput: + $ref: "./schemas/integration/StreamingOutput.yaml" + Study: + $ref: "./schemas/study/Study.yaml" + StudyValidationSummary: + $ref: "./schemas/integration/StudyValidationSummary.yaml" + TaskInfo: + $ref: "./schemas/tasks/TaskInfo.yaml" + ValidationError: + $ref: "./schemas/integration/ValidationError.yaml" + SearchStudyRequest: + $ref: "./schemas/integration/SearchStudyRequest.yaml" + AppliedFilter: + $ref: "./schemas/integration/AppliedFilter.yaml" + PageRequest: + $ref: "./schemas/integration/PageRequest.yaml" + FindObjectsResponse: + $ref: "./schemas/integration/FindObjectsResponse.yaml" + ObjectsPage: + $ref: "./schemas/integration/ObjectsPage.yaml" + StudySearchInfo: + $ref: "./schemas/integration/StudySearchInfo.yaml" + MetainfoKeyForSummary: + $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" + FilterOptionGroup: + $ref: "./schemas/integration/FilterOptionGroup.yaml" + FilterOption: + $ref: "./schemas/integration/FilterOption.yaml" + DERequest: + $ref: "./schemas/cell/DERequest.yaml" + DEResponse: + $ref: "./schemas/cell/DEResponse.yaml" + GSRequest: + $ref: "./schemas/cell/GSRequest.yaml" + GSResponse: + $ref: "./schemas/cell/GSResponse.yaml" + CRRequest: + $ref: "./schemas/cell/CRRequest.yaml" + CRResponse: + $ref: "./schemas/cell/CRResponse.yaml" + ExceptionTypeAndMessage: + $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" + ImportCellsRequest: + $ref: "./schemas/job/ImportCellsRequest.yaml" + ImportCellsFromMultipartRequest: + $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" + ImportMetadataRequest: + $ref: "./schemas/job/ImportMetadataRequest.yaml" + ImportMetadataFromMultipartRequest: + $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + ImportSignalRunRequest: + $ref: "./schemas/job/ImportSignalRunRequest.yaml" + ImportSignalRunFomMultipartRequest: + $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + ImportExpressionSignalRunRequest: + $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" + ImportExpressionSignalRunFromMultipartRequest: + $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + ImportAFileRequest: + $ref: "./schemas/job/ImportAFileRequest.yaml" + ImportAFileFromMultipartRequest: + $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" + Info: + $ref: "./schemas/job/Info.yaml" + JobRuntimeError: + $ref: "./schemas/job/JobRuntimeError.yaml" + Output: + $ref: "./schemas/job/Output.yaml" + DetachedCollection: + $ref: "./schemas/manage-data/DetachedCollection.yaml" + DetachedObject: + $ref: "./schemas/manage-data/DetachedObject.yaml" + ManagedObject: + $ref: "./schemas/manage-data/ManagedObject.yaml" + XrefSetCreateRequest: + $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" + XrefSetCreateResponse: + $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" + XrefSetMetadata: + $ref: "./schemas/reference-data/XrefSetMetadata.yaml" + XrefSetSearchResult: + $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" + XrefSetSearchResultEntry: + $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + UploadRGRequest: + $ref: "./schemas/reference-genome/UploadRGRequest.yaml" + AccessionResponse: + $ref: "./schemas/common/AccessionResponse.yaml" + RGItem: + $ref: "./schemas/reference-genome/RGItem.yaml" + Sample: + $ref: "./schemas/sample/Sample.yaml" + Group: + $ref: "./schemas/scim/Group.yaml" + Member: + $ref: "./schemas/scim/Member.yaml" + GroupPatch: + $ref: "./schemas/scim/GroupPatch.yaml" + PatchOperation: + $ref: "./schemas/scim/PatchOperation.yaml" + FilterGroupsResponse: + $ref: "./schemas/scim/FilterGroupsResponse.yaml" + GroupResponse: + $ref: "./schemas/scim/GroupResponse.yaml" + Meta: + $ref: "./schemas/scim/Meta.yaml" + SCIMErrorResponse: + $ref: "./schemas/scim/SCIMErrorResponse.yaml" + BaseErrorResponse: + $ref: "./schemas/scim/BaseErrorResponse.yaml" + ErrorMessage: + $ref: "./schemas/scim/ErrorMessage.yaml" + User: + $ref: "./schemas/scim/User.yaml" + Email: + $ref: "./schemas/scim/Email.yaml" + UserPatch: + $ref: "./schemas/scim/UserPatch.yaml" + FilterUsersResponse: + $ref: "./schemas/scim/FilterUsersResponse.yaml" + UserResponse: + $ref: "./schemas/scim/UserResponse.yaml" + VariantMetadataWithId: + $ref: "./schemas/variant/VariantMetadataWithId.yaml" + VariantItem: + $ref: "./schemas/variant/VariantItem.yaml" + VariantResponse: + $ref: "./schemas/variant/VariantResponse.yaml" + securitySchemes: + Access-token: + in: "header" + name: "Authorization" + type: "apiKey" + Genestack-API-Token: + in: "header" + name: "Genestack-API-Token" + type: "apiKey" + parameters: + AllowDuplicates: + description: "Load duplicate data: the data from the link(s) has already been\ + \ previously loaded into ODM, and for **testing purposes**, you need to load\ + \ this data again." + in: "query" + name: "allow_dups" + schema: + default: false + type: "boolean" diff --git a/openapi/v1/odmApi.json b/openapi/v1/odmApi.json new file mode 100644 index 00000000..ef5ec235 --- /dev/null +++ b/openapi/v1/odmApi.json @@ -0,0 +1,21233 @@ +{ + "openapi" : "3.1.0", + "info" : { + "description" : "This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata.\n\nBefore carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software.\n\nTo try out calls in this swagger page:\n\n1. Click the 'Authorize' button below to enter your API token\n2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button\n3. Enter parameter values that you wish to try\n4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears\n\n\n The server response will be in the section that follows.", + "title" : "ODM API", + "version" : "default-released" + }, + "tags" : [ { + "name" : "Cells as Curator" + }, { + "name" : "Cells as User" + }, { + "name" : "Expression SPoT as Curator" + }, { + "name" : "Expression SPoT as User" + }, { + "name" : "Files as Curator" + }, { + "name" : "Files as User" + }, { + "name" : "Flow Cytometry SPoT as Curator" + }, { + "name" : "Flow Cytometry SPoT as User" + }, { + "name" : "Cell integration as Curator" + }, { + "name" : "Expression integration as Curator" + }, { + "name" : "Files integration as Curator" + }, { + "name" : "Flow Cytometry (FACS) integration as Curator" + }, { + "name" : "Library integration as Curator" + }, { + "name" : "Linkage as Curator" + }, { + "name" : "Metadata versioning as Curator" + }, { + "name" : "Omics queries as Curator" + }, { + "name" : "Preparation integration as Curator" + }, { + "name" : "Sample integration as Curator" + }, { + "name" : "Study integration as Curator" + }, { + "name" : "Validation summary as Curator" + }, { + "name" : "Variant integration as Curator" + }, { + "name" : "Expression integration as User" + }, { + "name" : "Files integration as User" + }, { + "name" : "Flow Cytometry (FACS) integration as User" + }, { + "name" : "Library integration as User" + }, { + "name" : "Linkage as User" + }, { + "name" : "Omics queries as User" + }, { + "name" : "Preparation integration as User" + }, { + "name" : "Sample integration as User" + }, { + "name" : "Study integration as User" + }, { + "name" : "Variant integration as User" + }, { + "name" : "Data import jobs" + }, { + "name" : "Data import via direct file upload" + }, { + "name" : "Job operations" + }, { + "name" : "Library SPoT as Curator" + }, { + "name" : "Library SPoT as User" + }, { + "name" : "Manage Data" + }, { + "name" : "Preparation SPoT as Curator" + }, { + "name" : "Preparation SPoT as User" + }, { + "name" : "Xrefset queries" + }, { + "name" : "Reference genome" + }, { + "name" : "Sample SPoT as Curator" + }, { + "name" : "Sample SPoT as User" + }, { + "name" : "Groups" + }, { + "name" : "Users" + }, { + "name" : "Study SPoT as Curator" + }, { + "name" : "Study SPoT as User" + }, { + "name" : "Tasks API" + }, { + "name" : "Variant SPoT as Curator" + }, { + "name" : "Variant SPoT as User" + } ], + "paths" : { + "/api/v1/as-curator/cells/{id}" : { + "get" : { + "operationId" : "getCellByIdAsCurator", + "parameters" : [ { + "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Cell" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided ID could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a cell by ID", + "tags" : [ "Cells as Curator" ] + } + }, + "/api/v1/as-curator/cells/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", + "operationId" : "getCellsByGroupAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the cell group.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CellListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Cell data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cells from a given group", + "tags" : [ "Cells as Curator" ] + } + }, + "/api/v1/as-user/cells/{id}" : { + "get" : { + "operationId" : "getCellByIdAsUser", + "parameters" : [ { + "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Cell" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided ID could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a cell by ID", + "tags" : [ "Cells as User" ] + } + }, + "/api/v1/as-user/cells/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", + "operationId" : "getCellsByGroupAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the cell group.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CellListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Cell data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cells from a given group", + "tags" : [ "Cells as User" ] + } + }, + "/api/v1/as-curator/expressions" : { + "get" : { + "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getExpressionDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minExpressionLevel", + "schema" : { + "format" : "double", + "type" : "number" + } + }, { + "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionResponse" + } + } + }, + "description" : "Retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Expression data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple expression data and metadata objects", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchExpressionGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group/by/run/{id}" : { + "get" : { + "operationId" : "getExpressionGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/group/{id}" : { + "get" : { + "operationId" : "getExpressionGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression group by ID (groupId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchExpressionRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/{id}" : { + "get" : { + "operationId" : "getExpressionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by ID (itemId)", + "tags" : [ "Expression SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateExpressionRunAsCurator", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update metadata object by expression object run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/expressions/{id}/versions" : { + "get" : { + "operationId" : "getExpressionVersionsAsCurator", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of expression object versions by run ID (runId)", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-curator/expressions/{id}/versions/{version}" : { + "get" : { + "operationId" : "getExpressionByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the expression object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by run ID and its version", + "tags" : [ "Expression SPoT as Curator" ] + } + }, + "/api/v1/as-user/expressions" : { + "get" : { + "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getExpressionDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minExpressionLevel", + "schema" : { + "format" : "double", + "type" : "number" + } + }, { + "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionResponse" + } + } + }, + "description" : "Retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Expression data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple expression data and metadata objects", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchExpressionGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group/by/run/{id}" : { + "get" : { + "operationId" : "getExpressionGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/group/{id}" : { + "get" : { + "operationId" : "getExpressionGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression group by ID (groupId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchExpressionRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}" : { + "get" : { + "operationId" : "getExpressionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ExpressionItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by ID (itemId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}/versions" : { + "get" : { + "operationId" : "getExpressionVersionsAsUser", + "parameters" : [ { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of expression object versions by run ID (runId)", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-user/expressions/{id}/versions/{version}" : { + "get" : { + "operationId" : "getExpressionByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Expression object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single expression object by run ID and its version", + "tags" : [ "Expression SPoT as User" ] + } + }, + "/api/v1/as-curator/files/{id}/download" : { + "head" : { + "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", + "operationId" : "headFileAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "File exists. Additional metadata is provided in the response headers." + }, + "400" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "tags" : [ "Files as Curator" ] + }, + "get" : { + "description" : "Download a file by its accession.\n", + "operationId" : "getFileAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "Range", + "in" : "header", + "required" : false, + "schema" : { + "type" : "string", + "example" : "bytes=0-" + }, + "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" + } ], + "responses" : { + "200" : { + "description" : "File downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "206" : { + "description" : "Partial content downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "File cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a file by ID (accession)", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-curator/files/{id}" : { + "get" : { + "operationId" : "getFileMetadataByIdAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AFile" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by ID (accession)", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-curator/files" : { + "get" : { + "operationId" : "getFilesMetadataAsCurator", + "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", + "parameters" : [ { + "in" : "query", + "name" : "filter", + "description" : "Filter by files metadata (key-value metadata pair(s)).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for files via a full-text query over all file metadata.", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "includeContents", + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by its fields", + "tags" : [ "Files as Curator" ] + } + }, + "/api/v1/as-user/files/{id}/download" : { + "head" : { + "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", + "operationId" : "headFileAsUser", + "summary" : "Check if a file exists by ID (accession).", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "File exists. Additional metadata is provided in the response headers." + }, + "400" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "tags" : [ "Files as User" ] + }, + "get" : { + "description" : "Download a file by its accession.\n", + "operationId" : "getFileAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "Range", + "in" : "header", + "required" : false, + "schema" : { + "type" : "string", + "example" : "bytes=0-" + }, + "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" + } ], + "responses" : { + "200" : { + "description" : "File downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "206" : { + "description" : "Partial content downloaded successfully", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "File cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "406" : { + "content" : { }, + "description" : "File cannot be downloaded." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a file by ID (accession)", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-user/files/{id}" : { + "get" : { + "operationId" : "getFileMetadataByIdAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AFile" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by ID (accession)", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-user/files" : { + "get" : { + "operationId" : "getFilesMetadataAsUser", + "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", + "parameters" : [ { + "in" : "query", + "name" : "filter", + "description" : "Filter by files metadata (key-value metadata pair(s)).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for files via a full-text query over all file metadata.", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "includeContents", + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by its fields", + "tags" : [ "Files as User" ] + } + }, + "/api/v1/as-curator/flow-cytometries" : { + "get" : { + "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getFlowCytometryDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", + "in" : "query", + "name" : "readoutType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", + "in" : "query", + "name" : "population", + "schema" : { + "type" : "string" + } + }, { + "description" : "Marker value. E.g.: `PD1`, `BV786`", + "in" : "query", + "name" : "marker", + "schema" : { + "type" : "string" + } + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minValue", + "schema" : { + "type" : "number" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryResponse" + } + } + }, + "description" : "Retrieved Flow Cytometry data." + }, + "400" : { + "content" : { }, + "description" : "Flow Cytometry data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple flow cytometry data and metadata objects", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchFlowCytometryGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group/by/run/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/group/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchFlowCytometryRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/{id}" : { + "get" : { + "operationId" : "getFlowCytometryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateFlowCytometryAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update object metadata", + "tags" : [ "Flow Cytometry SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/flow-cytometries/{id}/versions" : { + "get" : { + "operationId" : "getFlowCytometryVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-curator/flow-cytometries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getFlowCytometryByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as Curator" ] + } + }, + "/api/v1/as-user/flow-cytometries" : { + "get" : { + "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getFlowCytometryDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", + "in" : "query", + "name" : "readoutType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", + "in" : "query", + "name" : "population", + "schema" : { + "type" : "string" + } + }, { + "description" : "Marker value. E.g.: `PD1`, `BV786`", + "in" : "query", + "name" : "marker", + "schema" : { + "type" : "string" + } + }, { + "description" : "Minimum threshold (inclusive) for returned expression values.", + "in" : "query", + "name" : "minValue", + "schema" : { + "type" : "number" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryResponse" + } + } + }, + "description" : "Retrieved Flow Cytometry data." + }, + "400" : { + "content" : { }, + "description" : "Flow Cytometry data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple flow cytometry data and metadata objects", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchFlowCytometryGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group/by/run/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/group/{id}" : { + "get" : { + "operationId" : "getFlowCytometryGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchFlowCytometryRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}" : { + "get" : { + "operationId" : "getFlowCytometryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FlowCytometryItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}/versions" : { + "get" : { + "operationId" : "getFlowCytometryVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-user/flow-cytometries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getFlowCytometryByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample flow cytometry by ID (accession)", + "tags" : [ "Flow Cytometry SPoT as User" ] + } + }, + "/api/v1/as-curator/data-types" : { + "get" : { + "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", + "operationId" : "getDataTypesAsCurator", + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Lists all available data types.", + "tags" : [ "Linkage as Curator" ] + } + }, + "/api/v1/as-curator/data-types/links" : { + "get" : { + "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", + "operationId" : "getDataTypesLinksAsCurator", + "parameters" : [ { + "description" : "Return only links with the specified data type.", + "in" : "query", + "name" : "type", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/SourceTypePair" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List all possible links between data types that match the specified criteria.", + "tags" : [ "Linkage as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/library/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByLibraryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related library ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/preparation/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByPreparation", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getExpressionGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}" : { + "post" : { + "description" : "Create a link between a group of cell expression objects and a group of cell metadata.\n\nA cell expression object can be linked to one cell metadata object only.", + "operationId" : "createExpressionGroupCellGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell expression group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the cell metadata group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) cell links were created." + }, + "204" : { + "content" : { }, + "description" : "All links were created." + }, + "400" : { + "content" : { }, + "description" : "Incorrect Cell or Expression group provided, see error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of cell expression objects and a group of cell metadata.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of library objects", + "operationId" : "deleteExpressionGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of library objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of library objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) sample links created." + }, + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Library group, signal group or libraries to link not found" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of library objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of preparation objects", + "operationId" : "deleteExpressionGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of preparation objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of preparation objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Some (not all) sample links created." + }, + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Preparation group, signal group or preparations to link not found" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of preparation objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of expression objects and a group of sample objects", + "operationId" : "deleteExpressionGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of expression objects and a group of sample objects", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of expression objects and a group of sample objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createExpressionGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "400" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of expression objects and a group of sample objects", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToLibraryPairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToPreparationPairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a library", + "operationId" : "deleteExpressionLibraryLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a library", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a library.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionLibraryLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a library", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a preparation", + "operationId" : "deleteExpressionPreparationLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a preparation", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a preparation.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionPreparationLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a preparation", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between an expression object and a sample", + "operationId" : "deleteExpressionSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between an expression object and a sample", + "tags" : [ "Expression integration as Curator" ] + }, + "post" : { + "description" : "Create a link between an expression object and a sample.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", + "operationId" : "createExpressionSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between an expression object and a sample", + "tags" : [ "Expression integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getFlowCytometryGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of flow-cytometry objects and a group of sample objects", + "operationId" : "deleteFlowCytometryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of flow-cytometry objects and a group of sample objects", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of flow-cytometry objects and a group of sample objects.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.\n\nUsers can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createFlowCytometryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of flow-cytometry objects and a group of sample objects", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between a flow-cytometry object and a sample", + "operationId" : "deleteFlowCytometrySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level data block", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a flow-cytometry object and a sample", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a flow-cytometry object and a sample.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.", + "operationId" : "createFlowCytometrySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level data block", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a flow-cytometry object and a sample", + "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/libraries/by/samples" : { + "get" : { + "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibrariesBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related samples", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/by/sample/{id}" : { + "get" : { + "operationId" : "getLibraryBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related sample ID (accession)", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/group/by/study/{id}" : { + "get" : { + "operationId" : "getLibraryGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete links between samples and libraries related to the specified group", + "operationId" : "deleteLibraryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete links between samples and libraries related to the specified group", + "tags" : [ "Library integration as Curator" ] + }, + "post" : { + "description" : "Create links between samples and libraries.\n\nLibrary objects of the same group can only be linked to objects of the same study.", + "operationId" : "createLibraryGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between samples and libraries", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibraryLinksToSamplesAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete a link between a library and a sample", + "operationId" : "deleteLibrarySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a link between a library and a sample", + "tags" : [ "Library integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a library and a sample.\n\nLibrary objects of the same group can only be linked to objects of the same study.", + "operationId" : "createLibrarySampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the library object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a library and a sample", + "tags" : [ "Library integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/by/sample/{id}" : { + "get" : { + "operationId" : "getPreparationBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/group/by/study/{id}" : { + "get" : { + "operationId" : "getPreparationGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete links between samples and preparations related to the specified group", + "operationId" : "deletePreparationGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete links between samples and preparations related to the specified group", + "tags" : [ "Preparation integration as Curator" ] + }, + "post" : { + "description" : "Create links between samples and preparations.\n\nPreparation objects of the same group can only be linked to objects of the same study.", + "operationId" : "createPreparationGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between samples and preparations", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationLinksToSamplesAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete a link between a preparation and a sample", + "operationId" : "deletePreparationSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a link between a preparation and a sample", + "tags" : [ "Preparation integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a preparation and a sample.\n\nPreparation objects of the same group can only be linked to objects of the same study.", + "operationId" : "createPreparationSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the preparation object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a preparation and a sample", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/preparations/by/samples" : { + "get" : { + "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationsBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related samples", + "tags" : [ "Preparation integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of sample objects and a study", + "operationId" : "deleteSampleGroupStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of sample objects and a study", + "tags" : [ "Sample integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of sample objects and a study.\n\nSample objects of the same group can only be linked to the same study.", + "operationId" : "createSampleGroupStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of sample objects and a study", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}" : { + "delete" : { + "description" : "Delete link between a sample and a study", + "operationId" : "deleteSampleStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a sample and a study", + "tags" : [ "Sample integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a sample and a study.\n\nSample objects of the same group can only be linked to the same study.", + "operationId" : "createSampleStudyLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the study object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a sample and a study", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/libraries" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related libraries", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/preparations" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related preparations", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/samples/by/study/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related study ID (accession)", + "tags" : [ "Sample integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/libraries" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related libraries", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/preparations" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related preparations", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/samples" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesBySamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related samples", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/study/by/sample/{id}" : { + "get" : { + "operationId" : "getStudyBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying sample ID (accession)", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/studies/by/files" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByFilesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related attachment files", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/study/by/file/{id}" : { + "get" : { + "operationId" : "getStudyByFileAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying attachment file ID (accession)", + "tags" : [ "Study integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantBySampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getVariantGroupsByStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}" : { + "delete" : { + "description" : "Delete link between a group of variant objects and a group of sample objects", + "operationId" : "deleteVariantGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a group of variant objects and a group of sample objects", + "tags" : [ "Variant integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a group of variant objects and a group of sample objects.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", + "operationId" : "createVariantGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", + "in" : "query", + "name" : "linkingAttribute", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Not all signal data were linked to the samples." + }, + "204" : { + "content" : { }, + "description" : "All signal data were linked to the samples from the specified sample group." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a group of variant objects and a group of sample objects", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantRunToSamplePairsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}" : { + "delete" : { + "description" : "Delete link between a variant object and a sample", + "operationId" : "deleteVariantSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link deleted." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be deleted." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete link between a variant object and a sample", + "tags" : [ "Variant integration as Curator" ] + }, + "post" : { + "description" : "Create a link between a variant object and a sample.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.", + "operationId" : "createVariantSampleLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link created." + }, + "400" : { + "content" : { }, + "description" : "Link cannot be created." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create a link between a variant object and a sample", + "tags" : [ "Variant integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/fulltext/search/studies" : { + "post" : { + "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", + "operationId" : "searchStudiesByFilterAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SearchStudyRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FindObjectsResponse" + } + } + }, + "description" : "The request was successful. Retrieved studies and filters." + }, + "400" : { + "content" : { }, + "description" : "Invalid request body" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Find and retrieve studies by full-text or facet query", + "tags" : [ "Study integration as Curator" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-curator/links" : { + "delete" : { + "description" : "This method should be used in case you want to delete the links of an object. Please, keep in mind that deleting a link between Study and Sample will not delete a link between corresponding Sample and it’s signal.", + "operationId" : "deleteLinkAsCurator", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Link has been successfully deleted." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No links were found." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Deletes existing links matching the specified criteria.", + "tags" : [ "Linkage as Curator" ] + }, + "get" : { + "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", + "operationId" : "getLinksByParamsAsCurator", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Param says to skip that many links before beginning to return links.", + "in" : "query", + "name" : "offset", + "schema" : { + "default" : 0, + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Param says to limit the count of returned links.", + "in" : "query", + "name" : "limit", + "schema" : { + "default" : 1000, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links matching the specified criteria.", + "tags" : [ "Linkage as Curator" ] + }, + "post" : { + "description" : "This method should be used only in case you need to create links between 2 objects. Links are created both ways (e.g. when linking Object A to Object B it can be done both ways, by linking firstType to secondType and vice versa).", + "operationId" : "saveLinksAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Link" + }, + "type" : "array" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { }, + "description" : "Links were updated or not modified." + }, + "201" : { + "content" : { }, + "description" : "At least one new link has been created.Some other links might have been updated or not modified." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "409" : { + "content" : { }, + "description" : "Link cannot be created due to conflict with existing link" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Creates new links between objects.", + "tags" : [ "Linkage as Curator" ], + "x-codegen-request-body-name" : "links" + } + }, + "/api/v1/as-curator/links/get-batch" : { + "post" : { + "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", + "operationId" : "getLinksByIdsAsCurator", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BatchOfIds" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", + "tags" : [ "Linkage as Curator" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-curator/omics/cells" : { + "get" : { + "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsAsCurator", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve Cell objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/cells/expression/data" : { + "get" : { + "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsExpressionDataAsCurator", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cell expression objects by searching across multiple metadata types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/data" : { + "get" : { + "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/expression/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedExpressionDataAsCurator", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Accession of the expression group object (GCT)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", + "in" : "query", + "name" : "roundDigits", + "schema" : { + "default" : 4, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/csv" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given tabular file", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/flow-cytometry/data" : { + "get" : { + "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/flow-cytometry/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchSamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/data" : { + "get" : { + "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantDataAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant data objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique identifier (accession) of Reference Genome object.", + "in" : "query", + "name" : "referenceGenomeId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/variant/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedVariantDataAsCurator", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Accession of the variant group object (VCF)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Variant data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given VCF file", + "tags" : [ "Omics queries as Curator" ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/cell-ratio" : { + "post" : { + "operationId" : "cellRatioAsCurator", + "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRResponse" + } + } + }, + "description" : "Cell ratio result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/differential-expression" : { + "post" : { + "operationId" : "differentialExpressionAsCurator", + "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DERequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DEResponse" + } + } + }, + "description" : "Differential expression result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/omics/cells/analytics/gene-summary" : { + "post" : { + "operationId" : "geneSummaryAsCurator", + "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as Curator" ], + "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "required" : true, + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSRequest" + } + } + } + }, + "responses" : { + "200" : { + "description" : "Gene summary result", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSResponse" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/integration/studies/{id}/tasks/publish-versions" : { + "post" : { + "description" : "This endpoint publishes information from drafts and creates new metadata versions for the specified study and all associated objects. The version name is set to “Auto-published by API call”. Only curators with access to the specified studies can use this method.", + "operationId" : "publishStudyByAccessionAsCurator", + "parameters" : [ { + "description" : "Supply the accession of the study to be published", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", + "in" : "query", + "name" : "versionMessage", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Forbidden" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Asynchronous task that publishes all pending versions for a single study.", + "tags" : [ "Metadata versioning as Curator" ] + } + }, + "/api/v1/as-curator/integration/studies/{id}/validation-summary" : { + "get" : { + "operationId" : "getStudyValidationSummary", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/StudyValidationSummary" + } + } + }, + "description" : "Study validation result." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve validation summary by querying study ID (accession)", + "tags" : [ "Validation summary as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/files/by/study/{id}" : { + "get" : { + "operationId" : "getFilesByStudyAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by study ID", + "tags" : [ "Files integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and samples.\n\nCell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study.", + "operationId" : "createCellGroupSampleGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the sample group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to samples." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to samples." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or samples to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and samples", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and libraries.\n\nCell objects of the same group can be linked to library objects from multiple library groups, but only within the same study.", + "operationId" : "createCellGroupLibraryGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the library group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to libraries." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to libraries." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or libraries to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and libraries", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}" : { + "post" : { + "description" : "Create links between cells and preparations.\n\nCell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study.", + "operationId" : "createCellGroupPreparationGroupLinkAsCurator", + "parameters" : [ { + "description" : "The ID (accession) of the cell group object", + "in" : "path", + "name" : "sourceId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The ID (accession) of the preparation group object", + "in" : "path", + "name" : "targetId", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { }, + "description" : "Cell objects have been partially linked to preparations." + }, + "204" : { + "content" : { }, + "description" : "Cell objects have been fully linked to preparations." + }, + "400" : { + "content" : { }, + "description" : "Sample group, cell group or preparations to the link were not found." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Create links between cells and preparations", + "tags" : [ "Cell integration as Curator" ] + } + }, + "/api/v1/as-user/data-types" : { + "get" : { + "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", + "operationId" : "getDataTypesAsUser", + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Lists all available data types.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/data-types/links" : { + "get" : { + "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", + "operationId" : "getDataTypesLinksAsUser", + "parameters" : [ { + "description" : "Return only links with the specified data type.", + "in" : "query", + "name" : "type", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/SourceTypePair" + }, + "type" : "array", + "uniqueItems" : true + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List all possible links between data types that match the specified criteria.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/library/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByLibraryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related library ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/preparation/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionByPreparationAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getExpressionGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToLibraryPairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToPreparationPairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getExpressionRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Expression integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getFlowCytometryGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getFlowCytometryRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Flow Cytometry (FACS) integration as User" ] + } + }, + "/api/v1/as-user/integration/link/libraries/by/samples" : { + "get" : { + "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibrariesBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related samples", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/by/sample/{id}" : { + "get" : { + "operationId" : "getLibraryBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Library" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library metadata by querying related sample ID (accession)", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/group/by/study/{id}" : { + "get" : { + "operationId" : "getLibraryGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getLibraryLinksToSamplesAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", + "tags" : [ "Library integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/by/sample/{id}" : { + "get" : { + "operationId" : "getPreparationBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/Preparation" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/group/by/study/{id}" : { + "get" : { + "operationId" : "getPreparationGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationLinksToSamplesAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/preparations/by/samples" : { + "get" : { + "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getPreparationsBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparation metadata by querying related samples", + "tags" : [ "Preparation integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/libraries" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related libraries", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/preparations" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related preparations", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/samples/by/study/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getSamplesByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata by querying related study ID (accession)", + "tags" : [ "Sample integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/libraries" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related libraries", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/preparations" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related preparations", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/samples" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesBySamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related samples", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/study/by/sample/{id}" : { + "get" : { + "operationId" : "getStudyBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying sample ID (accession)", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/studies/by/files" : { + "get" : { + "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getStudiesByFilesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata objects by querying related attachment files", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/link/study/by/file/{id}" : { + "get" : { + "operationId" : "getStudyByFileAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve study metadata by querying attachment file ID (accession)", + "tags" : [ "Study integration as User" ] + } + }, + "/api/v1/as-user/integration/fulltext/search/studies" : { + "post" : { + "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", + "operationId" : "searchStudiesByFilterAsUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SearchStudyRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/FindObjectsResponse" + } + } + }, + "description" : "The request was successful. Retrieved studies and filters." + }, + "400" : { + "content" : { }, + "description" : "Invalid request body" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Find and retrieve studies by full-text or facet query", + "tags" : [ "Study integration as User" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-user/integration/link/variant/by/sample/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantBySampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/integration/link/variant/group/by/study/{id}" : { + "get" : { + "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", + "operationId" : "getVariantGroupsByStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/MetadataWithId" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group metadata by querying study ID (accession)", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", + "operationId" : "getVariantRunToSamplePairsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", + "tags" : [ "Variant integration as User" ] + } + }, + "/api/v1/as-user/links" : { + "get" : { + "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", + "operationId" : "getLinksByParamsAsUser", + "parameters" : [ { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "firstId", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "firstType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Object ID (accession) (e.g. accession of study)", + "in" : "query", + "name" : "secondId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Type of the object (e.g. study)", + "in" : "query", + "name" : "secondType", + "schema" : { + "type" : "string" + } + }, { + "description" : "Param says to skip that many links before beginning to return links.", + "in" : "query", + "name" : "offset", + "schema" : { + "default" : 0, + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Param says to limit the count of returned links.", + "in" : "query", + "name" : "limit", + "schema" : { + "default" : 1000, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links matching the specified criteria.", + "tags" : [ "Linkage as User" ] + } + }, + "/api/v1/as-user/links/get-batch" : { + "post" : { + "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", + "operationId" : "getLinksByIdsAsUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/BatchOfIds" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", + "tags" : [ "Linkage as User" ], + "x-codegen-request-body-name" : "request" + } + }, + "/api/v1/as-user/omics/cells" : { + "get" : { + "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsAsUser", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve Cell objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/cells/expression/data" : { + "get" : { + "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", + "operationId" : "omicsSearchCellsExpressionDataAsUser", + "parameters" : [ { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", + "in" : "query", + "name" : "cellQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve cell expression objects by searching across multiple metadata types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/data" : { + "get" : { + "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchExpressionGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/expression/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n \n\n## Error Handling\n In case of unexpected internal error during data retrieval, the last line of the body will contain an error message, prefixed by the `#` character \n\n", + "operationId" : "omicsSearchStreamedExpressionDataAsUser", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", + "explode" : true, + "in" : "query", + "name" : "featureList", + "schema" : { + "items" : { + "type" : "string", + "example" : "KRAS" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Accession of the expression group object (GCT)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", + "in" : "query", + "name" : "roundDigits", + "schema" : { + "default" : 4, + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/csv" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Expression data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given tabular file", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/flow-cytometry/data" : { + "get" : { + "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/flow-cytometry/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchFlowCytometryGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchSamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve sample metadata objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/data" : { + "get" : { + "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantDataAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve variant data objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/group" : { + "get" : { + "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", + "operationId" : "omicsSearchVariantGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", + "in" : "query", + "name" : "studyFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "studyQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "libraryFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "libraryQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "preparationFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "preparationQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "vxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", + "in" : "query", + "name" : "exFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", + "in" : "query", + "name" : "fxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", + "in" : "query", + "name" : "fxFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique identifier (accession) of Reference Genome object.", + "in" : "query", + "name" : "referenceGenomeId", + "schema" : { + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/OmicsResponse" + } + } + }, + "description" : "Omics query result." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve group objects by searching across multiple data types", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/variant/streamed-data" : { + "get" : { + "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", + "operationId" : "omicsSearchStreamedVariantDataAsUser", + "parameters" : [ { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", + "in" : "query", + "name" : "sampleFilter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "sampleQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", + "in" : "query", + "name" : "exQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", + "in" : "query", + "name" : "vxQuery", + "schema" : { + "type" : "string" + } + }, { + "description" : "Accession of the variant group object (VCF)", + "in" : "query", + "name" : "groupAccession", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/StreamingOutput" + } + } + }, + "description" : "Stream of retrieved Variant data." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in request. See error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Stream data from a given VCF file", + "tags" : [ "Omics queries as User" ] + } + }, + "/api/v1/as-user/omics/cells/analytics/cell-ratio" : { + "post" : { + "operationId" : "cellRatioAsUser", + "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRRequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/CRResponse" + } + } + }, + "description" : "Cell ratio result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/omics/cells/analytics/differential-expression" : { + "post" : { + "operationId" : "differentialExpressionAsUser", + "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DERequest" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DEResponse" + } + } + }, + "description" : "Differential expression result" + }, + "400" : { + "content" : { }, + "description" : "Entities cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/omics/cells/analytics/gene-summary" : { + "post" : { + "operationId" : "geneSummaryAsUser", + "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", + "tags" : [ "[BETA] Analytics omics queries as User" ], + "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", + "requestBody" : { + "required" : true, + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSRequest" + } + } + } + }, + "responses" : { + "200" : { + "description" : "Gene summary result", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GSResponse" + } + } + } + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-user/integration/link/files/by/study/{id}" : { + "get" : { + "operationId" : "getFilesByStudyAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", + "in" : "query", + "name" : "includeContents", + "required" : false, + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + }, + "text/tab-separated-values" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/AFile" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "Object with provided accession could not be found in ODM." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve file's metadata by study ID", + "tags" : [ "Files integration as User" ] + } + }, + "/api/v1/jobs/import/study" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportStudy", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import study metadata from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/samples" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportSamples", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of sample metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/samples/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportSamplesMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of sample metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/libraries" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportLibraries", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + }, + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of library metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/libraries/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportLibrariesMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of library metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/preparations" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportPreparations", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of preparation metadata objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/preparations/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", + "operationId" : "startImportPreparationsMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of preparation metadata objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/cells" : { + "post" : { + "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", + "operationId" : "startImportCells", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportCellsRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of cell data objects from a TSV file", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/cells/multipart" : { + "post" : { + "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", + "operationId" : "startImportCellsMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportCellsFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a group of cell data objects from a TSV file via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/expression" : { + "post" : { + "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", + "operationId" : "startImportExpression", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportExpressionSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import any tabular data from TSV or GCT files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/expression/multipart" : { + "post" : { + "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", + "operationId" : "startImportExpressionMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import any tabular data from TSV or GCT files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/variant" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", + "operationId" : "startImportVariant", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import variation data and metadata from VCF and TSV files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/variant/multipart" : { + "post" : { + "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", + "operationId" : "startImportVariantMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import variation data and metadata from VCF and TSV files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/flow-cytometry" : { + "post" : { + "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportFlowCytometry", + "parameters" : [ { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import flow-cytometry data and metadata from FACS and TSV files", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/flow-cytometry/multipart" : { + "post" : { + "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportFlowCytometryMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/file" : { + "post" : { + "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link.\n* `dataLink` - a link to a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadataLink` - an optional URL of a metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportAFile", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ImportAFileRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import file as an attachment", + "tags" : [ "Data import jobs" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/import/file/multipart" : { + "post" : { + "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `data` - a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadata` - an optional metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", + "operationId" : "startImportAFileMultipart", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "$ref" : "#/components/schemas/ImportAFileFromMultipartRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import file as an attachment via multipart/form-data upload", + "tags" : [ "Data import via direct file upload" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/jobs/{jobExecId}/info" : { + "get" : { + "operationId" : "info", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "get information about one particular job execution", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/output" : { + "get" : { + "operationId" : "output", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Output" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "retrieve job output (result)", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/restart" : { + "put" : { + "operationId" : "restart", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "restart stopped (failed) job", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/jobs/{jobExecId}/stop" : { + "put" : { + "operationId" : "stop", + "parameters" : [ { + "in" : "path", + "name" : "jobExecId", + "required" : true, + "schema" : { + "format" : "int64", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Info" + } + } + }, + "description" : "successful operation" + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "stop running job", + "tags" : [ "Job operations" ] + } + }, + "/api/v1/as-curator/libraries" : { + "get" : { + "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchLibrariesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for library metadata objects", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/by/group/{id}" : { + "get" : { + "operationId" : "getLibrariesByGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve libraries related to the given group", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/{id}" : { + "get" : { + "operationId" : "getLibraryAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateLibraryAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a library object", + "tags" : [ "Library SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/libraries/{id}/versions" : { + "get" : { + "operationId" : "getLibraryVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-curator/libraries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getLibraryByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as Curator" ] + } + }, + "/api/v1/as-user/libraries" : { + "get" : { + "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchLibrariesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for library metadata objects", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/by/group/{id}" : { + "get" : { + "operationId" : "getLibrariesByGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve libraries related to the given group", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}" : { + "get" : { + "operationId" : "getLibraryAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}/versions" : { + "get" : { + "operationId" : "getLibraryVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/as-user/libraries/{id}/versions/{version}" : { + "get" : { + "operationId" : "getLibraryByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Library" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single library object by ID (accession)", + "tags" : [ "Library SPoT as User" ] + } + }, + "/api/v1/manage-data/detached-objects" : { + "get" : { + "description" : "Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'.\nStudy is considered as detached object itself in case there are no links to objects at a lower level.\nData with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter.\nThe detached objects are sorted according to their `detachedObjectType` and `genestack:accession`.\nSpecific ordering can be observed in the list of supported detached types found below.\nPagination of the results can be conveniently managed using the `cursor` and `limit` parameters.\n Supported types of detached objects (listed in the order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n\n", + "operationId" : "getDetachedObjects", + "parameters" : [ { + "description" : "Filter by detached object type. Multiple values can be used to filter the data.", + "explode" : true, + "in" : "query", + "name" : "detachedObjectType", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "limit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "This parameter enables retrieval of objects starting from a specific point.\n Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string.", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/DetachedCollection" + } + } + }, + "description" : "Retrieved detached data." + }, + "400" : { + "content" : { }, + "description" : "Detached data cannot be retrieved due to Bad Request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of detached objects", + "tags" : [ "Manage Data" ] + } + }, + "/api/v1/manage-data/data" : { + "delete" : { + "description" : "The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n * `FILE`\n\n Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules:\n * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group.\n * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group).\n * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM.\n * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups.\n * If you delete `FILE`, the file will be removed from ODM.", + "operationId" : "deleteData", + "parameters" : [ { + "description" : "Accessions files to be deleted.", + "explode" : false, + "in" : "query", + "name" : "accessions", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + } ], + "responses" : { + "202" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/ManagedObject" + }, + "type" : "array" + } + } + }, + "description" : "The deletion of the following files and all linked data has started." + }, + "400" : { + "content" : { }, + "description" : "Deletion could not be performed due to Bad Request." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method or the file is not meant to be deleted." + }, + "404" : { + "content" : { }, + "description" : "Some of the provided accessions could not be found in ODM. Deletion will not be preformed. Please review your list and repeat the attempt." + }, + "406" : { + "content" : { }, + "description" : "Some of the provided accessions do not belong to the supported object types. Deletion will not be performed. Please review your list and repeat the attempt." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete objects from ODM", + "tags" : [ "Manage Data" ] + } + }, + "/api/v1/as-curator/preparations" : { + "get" : { + "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchPreparationsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for preparation metadata objects", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/by/group/{id}" : { + "get" : { + "operationId" : "getPreparationsByGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparations related to the given group", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/{id}" : { + "get" : { + "operationId" : "getPreparationAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updatePreparationAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a preparation object", + "tags" : [ "Preparation SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/preparations/{id}/versions" : { + "get" : { + "operationId" : "getPreparationVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-curator/preparations/{id}/versions/{version}" : { + "get" : { + "operationId" : "getPreparationByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as Curator" ] + } + }, + "/api/v1/as-user/preparations" : { + "get" : { + "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchPreparationsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for preparation metadata objects", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/by/group/{id}" : { + "get" : { + "operationId" : "getPreparationsByGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve preparations related to the given group", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}" : { + "get" : { + "operationId" : "getPreparationAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}/versions" : { + "get" : { + "operationId" : "getPreparationVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/as-user/preparations/{id}/versions/{version}" : { + "get" : { + "operationId" : "getPreparationByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Preparation" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single preparation object by ID (accession)", + "tags" : [ "Preparation SPoT as User" ] + } + }, + "/api/v1/xrefsets" : { + "post" : { + "operationId" : "create", + "requestBody" : { + "description" : "Request body for creating a new xrefset.\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetCreateRequest" + } + } + }, + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetCreateResponse" + } + } + }, + "description" : "successful operation" + }, + "201" : { + "content" : { }, + "description" : "The objects were successfully created. The returned value is a list of created objects." + }, + "400" : { + "content" : { }, + "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details" + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to work with the xrefset." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Import a new xrefset file", + "tags" : [ "Xrefset queries" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/xrefsets/entries" : { + "get" : { + "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", + "operationId" : "searchEntries", + "parameters" : [ { + "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", + "explode" : true, + "in" : "query", + "name" : "sourceId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", + "explode" : true, + "in" : "query", + "name" : "targetId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetSearchResult" + } + } + }, + "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of entries across all xrefsets for given sourceId and targetId", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}" : { + "delete" : { + "operationId" : "deleteFile", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "pattern" : ".*", + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "Xrefset file successfully marked for deletion, mappings have been removed" + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to work with the xrefset." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Delete a xrefset with all related data.\nOnly users who uploaded the xrefset are allowed to delete it.", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}/entries" : { + "get" : { + "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n\n", + "operationId" : "searchEntriesWithinFile", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", + "explode" : true, + "in" : "query", + "name" : "sourceId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", + "explode" : true, + "in" : "query", + "name" : "targetId", + "schema" : { + "items" : { + "type" : "string" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetSearchResult" + } + } + }, + "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of entries for the given xrefset and given sourceId and targetId", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/xrefsets/{id}/metadata" : { + "get" : { + "operationId" : "getDetailsByAccession", + "parameters" : [ { + "description" : "xrefset ID", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/XrefSetMetadata" + } + } + }, + "description" : "Object containing xrefset details, including user submitted metadata and system info" + }, + "400" : { + "content" : { }, + "description" : "Invalid data in the request. See the error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "The xrefset does not exist." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve xrefset details", + "tags" : [ "Xrefset queries" ] + } + }, + "/api/v1/reference-genomes" : { + "get" : { + "operationId" : "search_reference_genomes", + "summary" : "List or search for Reference Genome objects", + "tags" : [ "Reference genome" ], + "description" : "Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects.", + "parameters" : [ { + "in" : "query", + "name" : "organism", + "description" : "Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "assembly", + "description" : "Major version (for example, `GRCh38`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "release", + "description" : "Ensembl reference genome minor version (for example, `75` or `109`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "query", + "description" : "Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`).", + "schema" : { + "type" : "string" + } + }, { + "in" : "query", + "name" : "pageLimit", + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "in" : "query", + "name" : "pageOffset", + "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + }, + "post" : { + "operationId" : "upload", + "summary" : "Upload reference genome to ODM", + "tags" : [ "Reference genome" ], + "description" : "In order to import reference genome file, please fill in the following fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format.\nNote: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided.\n* `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\nNote: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list.\n* `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html).\n* `release` - Ensembl reference genome minor version (for example, `75` or `109`).\n* `name` - customized reference genome title that is used for linkage variant files.\nBy default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`.\n\nReference genome will be available after initialisation. Please track initialisation task status.", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UploadRGRequest" + } + } + }, + "required" : false + }, + "responses" : { + "201" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccessionResponse" + } + } + }, + "description" : "The object was successfully created." + }, + "400" : { + "content" : { }, + "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Not enough permissions to call method." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/reference-genomes/{id}" : { + "get" : { + "operationId" : "get_reference_genome_by_accession", + "summary" : "Retrieve a single Reference Genome object by ID (accession)", + "tags" : [ "Reference genome" ], + "parameters" : [ { + "in" : "path", + "name" : "id", + "description" : "Unique identifier (Genestack accession) of Reference Genome object.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RGItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ] + } + }, + "/api/v1/as-curator/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchSamplesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for sample metadata objects", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-curator/samples/{id}" : { + "get" : { + "operationId" : "getSampleAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateSampleAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a sample object", + "tags" : [ "Sample SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/samples/{id}/versions" : { + "get" : { + "operationId" : "getSampleVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-curator/samples/{id}/versions/{version}" : { + "get" : { + "operationId" : "getSampleByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as Curator" ] + } + }, + "/api/v1/as-user/samples" : { + "get" : { + "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", + "operationId" : "searchSamplesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for sample metadata objects", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}" : { + "get" : { + "operationId" : "getSampleAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}/versions" : { + "get" : { + "operationId" : "getSampleVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/as-user/samples/{id}/versions/{version}" : { + "get" : { + "operationId" : "getSampleByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Sample" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single sample object by ID (accession)", + "tags" : [ "Sample SPoT as User" ] + } + }, + "/api/v1/scim/Groups" : { + "get" : { + "description" : "The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the \"Manage Groups\" permission, then a list of all groups.\n The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK.", + "operationId" : "findGroups", + "parameters" : [ { + "description" : "Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   Using other operators returns an error.\n Groups can be filtered by displayName only.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=displayName eq \"Curator\".", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "If excludedAttributes=members is specified in the request, groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", + "in" : "query", + "name" : "excludedAttributes", + "schema" : { + "type" : "string" + } + }, { + "description" : "The 1-based index of the first result in the current set of list results.", + "in" : "query", + "name" : "startIndex", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The number of resources returned in a list response page. The value by default is 100.", + "in" : "query", + "name" : "count", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/FilterGroupsResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Incorrect syntax in the request. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of available groups", + "tags" : [ "Groups" ] + }, + "post" : { + "description" : "The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the \"Group admin\" role. The \"members\" attribute in the request body must be empty, otherwise the endpoint returns an error.\n The endpoint does not require any user permission.\n The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name.\n If there are attributes in the request body that ODM does not support, then ODM ignores them.", + "operationId" : "createGroup", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Group" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupResponse" + } + } + }, + "description" : "The operation is successful. The response body contains the representation of the newly created group." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "409" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, data conflict. See the error message for details." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Add a new user group", + "tags" : [ "Groups" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Groups/{id}" : { + "delete" : { + "description" : "The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated.\n Permissions to call the endpoint:\n   - If the user does not have the \"Manage groups\" permission:\n     * the user has \"Group admin\" role - the user can delete the group;\n     * the user has \"Group member\" role - the group can not be deleted, an error is returned;\n     * the user is not a member of the specified group - the group can not be deleted, an error is returned.\n   - If the user has the \"Manage groups\" permission - the user can delete the group regardless of user’s membership in this group.", + "operationId" : "deleteGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "The group has been successfully removed. No data is returned." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied group ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Delete a group", + "tags" : [ "Groups" ] + }, + "get" : { + "description" : "The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required:\n   - If the user has the \"Manage groups\" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group;\n   - If the user does not have the \"Manage groups\" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned.", + "operationId" : "getGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "If excludedAttributes=members is specified in the request, Groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", + "in" : "query", + "name" : "excludedAttributes", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied group ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no available groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a group by id", + "tags" : [ "Groups" ] + }, + "patch" : { + "description" : "The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n The endpoint requires access to the group as admin of the group: the user has the \"Admin group\" role in the group or the user has the \"Manage groups\" permission.", + "operationId" : "patchGroup", + "parameters" : [ { + "description" : "String, unique identifier of the group in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/GroupPatch" + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "content" : { }, + "description" : "Group is successfully updated. No data is returned" + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no groups with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Update a group", + "tags" : [ "Groups" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Users" : { + "get" : { + "description" : "The endpoint returns a list of active users. The list can be filtered by user attributes using the filter parameter. If no filtering parameters are passed, then all users are returned. If there are no users in the response body, the endpoint returns 200 OK. The \"Manage organization\" permission is required.", + "operationId" : "findUsers", + "parameters" : [ { + "description" : "Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   and - logical \"and\", the filter is only a match if both expressions evaluate to true;\n   Using other operators returns an error.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] - returns a user with login = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\".", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "The 1-based index of the first result in the current set of list results.", + "in" : "query", + "name" : "startIndex", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The number of resources returned in a list response page. The value by default is 100.", + "in" : "query", + "name" : "count", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/FilterUsersResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Incorrect syntax in the request. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of all active users", + "tags" : [ "Users" ] + }, + "post" : { + "description" : "The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The \"Manage organization\" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the \"Manage organization\" permission.\n Only one email can be specified.", + "operationId" : "createUser", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/User" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "The operation is successful. The response body contains the representation of the newly created or updated user." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "409" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be created, data conflict. See the error message for details." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Add a new user", + "tags" : [ "Users" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/scim/Users/{id}" : { + "delete" : { + "operationId" : "deleteUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "content" : { }, + "description" : "The user has been successfully deactivated. No data is returned." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied user ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Deactivate a user", + "tags" : [ "Users" ] + }, + "get" : { + "description" : "The endpoint returns an active user by id, where id is internal user id in ODM. The \"Manage organization\" permission is required.", + "operationId" : "getUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "The request was successful." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The supplied user ID is invalid." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no available users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a user by id", + "tags" : [ "Users" ] + }, + "patch" : { + "description" : "The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n It is possible to update attributes of the deactivated users.\n\n The endpoint requires the \"Manage organization\" permission.", + "operationId" : "patchUser", + "parameters" : [ { + "description" : "String, unique identifier of the user in ODM.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/UserPatch" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/UserResponse" + } + } + }, + "description" : "User is successfully updated. The response body contains the representation of the updated user." + }, + "400" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." + }, + "401" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "Operation is not permitted. The \"Manage organization\" permission is required." + }, + "404" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/SCIMErrorResponse" + } + } + }, + "description" : "There are no users with the specified id." + }, + "500" : { + "content" : { + "application/scim+json" : { + "schema" : { + "$ref" : "#/components/schemas/BaseErrorResponse" + } + } + }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Genestack-API-Token" : [ ] + }, { + "Access-token" : [ ] + } ], + "summary" : "Update a user", + "tags" : [ "Users" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/studies" : { + "get" : { + "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", + "operationId" : "searchStudiesAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for study metadata objects", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-curator/studies/{id}" : { + "get" : { + "operationId" : "getStudyAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as Curator" ] + }, + "patch" : { + "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", + "operationId" : "updateStudyAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/MetadataContent" + } + } + }, + "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", + "required" : false + }, + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID or metadata is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Update a study object", + "tags" : [ "Study SPoT as Curator" ], + "x-codegen-request-body-name" : "body" + } + }, + "/api/v1/as-curator/studies/{id}/versions" : { + "get" : { + "operationId" : "getStudyVersionsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-curator/studies/{id}/versions/{version}" : { + "get" : { + "operationId" : "getStudyByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as Curator" ] + } + }, + "/api/v1/as-user/studies" : { + "get" : { + "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", + "operationId" : "searchStudiesAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", + "in" : "query", + "name" : "sort", + "schema" : { + "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + }, + "text/tab-separated-values" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "List or search for study metadata objects", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}" : { + "get" : { + "operationId" : "getStudyAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}/versions" : { + "get" : { + "operationId" : "getStudyVersionsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of object versions by ID", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/as-user/studies/{id}/versions/{version}" : { + "get" : { + "operationId" : "getStudyByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Study" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single study object by ID (accession)", + "tags" : [ "Study SPoT as User" ] + } + }, + "/api/v1/tasks/publish-versions" : { + "post" : { + "description" : "This endpoint publishes all information from drafts and creates new metadata versions for each study/associated objects with unpublished changes. Only curators with the ACCESS_ALL_DATA permission can use this method.", + "operationId" : "publishAllStudies", + "parameters" : [ { + "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", + "in" : "query", + "name" : "versionMessage", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "403" : { + "content" : { }, + "description" : "Forbidden" + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Asynchronous task that publishes all pending versions across all studies in the instance.", + "tags" : [ "Tasks API" ] + } + }, + "/api/v1/tasks/{id}" : { + "get" : { + "description" : "Supply the accession (id) of an ODM task to retrieve metadata about that task.", + "operationId" : "getTaskInfo", + "parameters" : [ { + "description" : "Accession of the task.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TaskInfo" + } + } + }, + "description" : "Task information." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve information about any ODM task.", + "tags" : [ "Tasks API" ] + } + }, + "/api/v1/as-curator/variants" : { + "get" : { + "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getAllVariantsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", + "in" : "query", + "name" : "variantRegion", + "schema" : { + "items" : { + "type" : "string", + "example" : "2:233364596-233385916" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", + "in" : "query", + "name" : "variantFeature", + "schema" : { + "items" : { + "type" : "string", + "example" : "ENSG00000227232" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", + "in" : "query", + "name" : "variantId", + "schema" : { + "items" : { + "type" : "string", + "example" : "rs334" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", + "in" : "query", + "name" : "variantFilter", + "schema" : { + "enum" : [ "pass", "noPass" ], + "type" : "string" + } + }, { + "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", + "in" : "query", + "name" : "variantInfo", + "schema" : { + "type" : "string" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantResponse" + } + } + }, + "description" : "Retrieved variant data." + }, + "400" : { + "content" : { }, + "description" : "Variant data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple variant data and metadata objects", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchGroupsAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group/by/run/{id}" : { + "get" : { + "operationId" : "getVariantGroupByRunAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/group/{id}" : { + "get" : { + "operationId" : "getVariantGroupAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant group by ID (groupId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchVariantRunsAsCurator", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}" : { + "get" : { + "operationId" : "getVariantAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by ID (itemId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}/versions" : { + "get" : { + "operationId" : "getVariantVersionsAsCurator", + "parameters" : [ { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of variant object versions by run ID (runId)", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-curator/variants/{id}/versions/{version}" : { + "get" : { + "operationId" : "getVariantByVersionAsCurator", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the variant object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by run ID and its version", + "tags" : [ "Variant SPoT as Curator" ] + } + }, + "/api/v1/as-user/variants" : { + "get" : { + "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "getAllVariantsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", + "in" : "query", + "name" : "variantRegion", + "schema" : { + "items" : { + "type" : "string", + "example" : "2:233364596-233385916" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", + "in" : "query", + "name" : "variantFeature", + "schema" : { + "items" : { + "type" : "string", + "example" : "ENSG00000227232" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", + "in" : "query", + "name" : "variantId", + "schema" : { + "items" : { + "type" : "string", + "example" : "rs334" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", + "in" : "query", + "name" : "variantFilter", + "schema" : { + "enum" : [ "pass", "noPass" ], + "type" : "string" + } + }, { + "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", + "in" : "query", + "name" : "variantInfo", + "schema" : { + "type" : "string" + } + }, { + "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", + "in" : "query", + "name" : "runFilter", + "schema" : { + "$ref" : "#/components/schemas/RunFilter" + }, + "style" : "form" + }, { + "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", + "explode" : true, + "in" : "query", + "name" : "runSourceFilter", + "schema" : { + "items" : { + "type" : "string", + "example" : "Run Source ID" + }, + "type" : "array" + }, + "style" : "form" + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantResponse" + } + } + }, + "description" : "Retrieved variant data." + }, + "400" : { + "content" : { }, + "description" : "Variant data cannot be retrieved." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve multiple variant data and metadata objects", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group" : { + "get" : { + "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", + "operationId" : "searchVariantGroupsAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", + "in" : "query", + "name" : "filter", + "schema" : { + "type" : "string" + } + }, { + "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", + "in" : "query", + "name" : "query", + "schema" : { + "type" : "string" + } + }, { + "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", + "in" : "query", + "name" : "searchSpecificTerms", + "schema" : { + "type" : "boolean" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + }, { + "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", + "in" : "query", + "name" : "useVersions", + "schema" : { + "type" : "string" + } + }, { + "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", + "in" : "query", + "name" : "pageOffset", + "schema" : { + "format" : "int32", + "type" : "integer" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponse" + } + } + }, + "description" : "The request was successful. The returned value is a list of objects." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve groups that match a query", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group/by/run/{id}" : { + "get" : { + "operationId" : "getVariantGroupByRunAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Unique identifier (runId) of the run.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single group object by run ID (runId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/group/{id}" : { + "get" : { + "operationId" : "getVariantGroupAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant group identifier (groupId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantMetadataWithId" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant group by ID (groupId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/runs/by/group/{id}" : { + "get" : { + "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", + "operationId" : "searchVariantRunsAsUser", + "parameters" : [ { + "description" : "Unique identifier (accession) of the object.", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The page tag to resume results from (see paging above).", + "in" : "query", + "name" : "cursor", + "schema" : { + "type" : "string" + } + }, { + "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", + "in" : "query", + "name" : "pageLimit", + "schema" : { + "format" : "int32", + "type" : "integer" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/RunsResponse" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve run objects related to the given group", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}" : { + "get" : { + "operationId" : "getVariantAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object unique identifier (itemId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VariantItem" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by ID (itemId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}/versions" : { + "get" : { + "operationId" : "getVariantVersionsAsUser", + "parameters" : [ { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "items" : { + "$ref" : "#/components/schemas/CommitInfo" + }, + "type" : "array" + } + } + }, + "description" : "The request was successful. The returned value is the list of object versions." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a list of variant object versions by run ID (runId)", + "tags" : [ "Variant SPoT as User" ] + } + }, + "/api/v1/as-user/variants/{id}/versions/{version}" : { + "get" : { + "operationId" : "getVariantByVersionAsUser", + "parameters" : [ { + "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", + "in" : "query", + "name" : "responseFormat", + "schema" : { + "$ref" : "#/components/schemas/ResponseFormat" + } + }, { + "description" : "Variant object run ID (runId).", + "in" : "path", + "name" : "id", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "Unique version of the variant object.", + "in" : "path", + "name" : "version", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", + "in" : "query", + "name" : "returnedMetadataFields", + "schema" : { + "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], + "type" : "string" + } + } ], + "responses" : { + "200" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SignalRun" + } + } + }, + "description" : "The request was successful. The returned value is the object." + }, + "400" : { + "content" : { }, + "description" : "The supplied object ID is invalid." + }, + "401" : { + "content" : { }, + "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." + }, + "404" : { + "content" : { }, + "description" : "No object exists with the given ID." + }, + "500" : { + "content" : { }, + "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." + } + }, + "security" : [ { + "Access-token" : [ ] + }, { + "Genestack-API-Token" : [ ] + } ], + "summary" : "Retrieve a single variant object by run ID and its version", + "tags" : [ "Variant SPoT as User" ] + } + } + }, + "components" : { + "schemas" : { + "Cell" : { + "$ref" : "./schemas/cell/Cell.yaml" + }, + "CellListResponse" : { + "$ref" : "./schemas/cell/CellListResponse.yaml" + }, + "CommitInfo" : { + "$ref" : "./schemas/common/CommitInfo.yaml" + }, + "ExpressionItem" : { + "$ref" : "./schemas/expression/ExpressionItem.yaml" + }, + "ExpressionResponse" : { + "$ref" : "./schemas/expression/ExpressionResponse.yaml" + }, + "IntegrationHelper" : { + "$ref" : "./schemas/common/IntegrationHelper.yaml" + }, + "ListResponse" : { + "$ref" : "./schemas/common/ListResponse.yaml" + }, + "MetaResponse" : { + "$ref" : "./schemas/common/MetaResponse.yaml" + }, + "MetadataContent" : { + "$ref" : "./schemas/common/MetadataContent.yaml" + }, + "MetadataWithId" : { + "$ref" : "./schemas/common/MetadataWithId.yaml" + }, + "PaginationInfo" : { + "$ref" : "./schemas/common/PaginationInfo.yaml" + }, + "RunFilter" : { + "$ref" : "./schemas/common/RunFilter.yaml" + }, + "RunsResponse" : { + "$ref" : "./schemas/common/RunsResponse.yaml" + }, + "ResponseFormat" : { + "$ref" : "./schemas/common/ResponseFormat.yaml" + }, + "SignalRun" : { + "$ref" : "./schemas/common/SignalRun.yaml" + }, + "AFile" : { + "$ref" : "./schemas/afile/AFile.yaml" + }, + "FlowCytometryItem" : { + "$ref" : "./schemas/flow-cytometry/FlowCytometryItem.yaml" + }, + "FlowCytometryResponse" : { + "$ref" : "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + }, + "AttributeInvalidValue" : { + "$ref" : "./schemas/integration/AttributeInvalidValue.yaml" + }, + "AttributeValidationSummary" : { + "$ref" : "./schemas/integration/AttributeValidationSummary.yaml" + }, + "BatchOfIds" : { + "$ref" : "./schemas/integration/BatchOfIds.yaml" + }, + "DataItem" : { + "$ref" : "./schemas/integration/DataItem.yaml" + }, + "DataPresentation" : { + "$ref" : "./schemas/integration/DataPresentation.yaml" + }, + "GroupValidationSummary" : { + "$ref" : "./schemas/integration/GroupValidationSummary.yaml" + }, + "IMetadata" : { + "$ref" : "./schemas/integration/IMetadata.yaml" + }, + "Library" : { + "$ref" : "./schemas/library/Library.yaml" + }, + "Link" : { + "$ref" : "./schemas/integration/Link.yaml" + }, + "MetadataPresentation" : { + "$ref" : "./schemas/integration/MetadataPresentation.yaml" + }, + "OmicsResponse" : { + "$ref" : "./schemas/integration/OmicsResponse.yaml" + }, + "OmicsResponseDataPresentation" : { + "$ref" : "./schemas/integration/OmicsResponseDataPresentation.yaml" + }, + "OmicsResponseMetadataPresentation" : { + "$ref" : "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + }, + "OmicsResponseMetadataWithId" : { + "$ref" : "./schemas/integration/OmicsResponseMetadataWithId.yaml" + }, + "Preparation" : { + "$ref" : "./schemas/preparation/Preparation.yaml" + }, + "Relationships" : { + "$ref" : "./schemas/integration/Relationships.yaml" + }, + "SourceTypePair" : { + "$ref" : "./schemas/integration/SourceTypePair.yaml" + }, + "StreamingOutput" : { + "$ref" : "./schemas/integration/StreamingOutput.yaml" + }, + "Study" : { + "$ref" : "./schemas/study/Study.yaml" + }, + "StudyValidationSummary" : { + "$ref" : "./schemas/integration/StudyValidationSummary.yaml" + }, + "TaskInfo" : { + "$ref" : "./schemas/tasks/TaskInfo.yaml" + }, + "ValidationError" : { + "$ref" : "./schemas/integration/ValidationError.yaml" + }, + "SearchStudyRequest" : { + "$ref" : "./schemas/integration/SearchStudyRequest.yaml" + }, + "AppliedFilter" : { + "$ref" : "./schemas/integration/AppliedFilter.yaml" + }, + "PageRequest" : { + "$ref" : "./schemas/integration/PageRequest.yaml" + }, + "FindObjectsResponse" : { + "$ref" : "./schemas/integration/FindObjectsResponse.yaml" + }, + "ObjectsPage" : { + "$ref" : "./schemas/integration/ObjectsPage.yaml" + }, + "StudySearchInfo" : { + "$ref" : "./schemas/integration/StudySearchInfo.yaml" + }, + "MetainfoKeyForSummary" : { + "$ref" : "./schemas/integration/MetainfoKeyForSummary.yaml" + }, + "FilterOptionGroup" : { + "$ref" : "./schemas/integration/FilterOptionGroup.yaml" + }, + "FilterOption" : { + "$ref" : "./schemas/integration/FilterOption.yaml" + }, + "DERequest" : { + "$ref" : "./schemas/cell/DERequest.yaml" + }, + "DEResponse" : { + "$ref" : "./schemas/cell/DEResponse.yaml" + }, + "GSRequest" : { + "$ref" : "./schemas/cell/GSRequest.yaml" + }, + "GSResponse" : { + "$ref" : "./schemas/cell/GSResponse.yaml" + }, + "CRRequest" : { + "$ref" : "./schemas/cell/CRRequest.yaml" + }, + "CRResponse" : { + "$ref" : "./schemas/cell/CRResponse.yaml" + }, + "ExceptionTypeAndMessage" : { + "$ref" : "./schemas/job/ExceptionTypeAndMessage.yaml" + }, + "ImportCellsRequest" : { + "$ref" : "./schemas/job/ImportCellsRequest.yaml" + }, + "ImportCellsFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportCellsFromMultipartRequest.yaml" + }, + "ImportMetadataRequest" : { + "$ref" : "./schemas/job/ImportMetadataRequest.yaml" + }, + "ImportMetadataFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + }, + "ImportSignalRunRequest" : { + "$ref" : "./schemas/job/ImportSignalRunRequest.yaml" + }, + "ImportSignalRunFomMultipartRequest" : { + "$ref" : "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + }, + "ImportExpressionSignalRunRequest" : { + "$ref" : "./schemas/job/ImportExpressionSignalRunRequest.yaml" + }, + "ImportExpressionSignalRunFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + }, + "ImportAFileRequest" : { + "$ref" : "./schemas/job/ImportAFileRequest.yaml" + }, + "ImportAFileFromMultipartRequest" : { + "$ref" : "./schemas/job/ImportAFileFromMultipartRequest.yaml" + }, + "Info" : { + "$ref" : "./schemas/job/Info.yaml" + }, + "JobRuntimeError" : { + "$ref" : "./schemas/job/JobRuntimeError.yaml" + }, + "Output" : { + "$ref" : "./schemas/job/Output.yaml" + }, + "DetachedCollection" : { + "$ref" : "./schemas/manage-data/DetachedCollection.yaml" + }, + "DetachedObject" : { + "$ref" : "./schemas/manage-data/DetachedObject.yaml" + }, + "ManagedObject" : { + "$ref" : "./schemas/manage-data/ManagedObject.yaml" + }, + "XrefSetCreateRequest" : { + "$ref" : "./schemas/reference-data/XrefSetCreateRequest.yaml" + }, + "XrefSetCreateResponse" : { + "$ref" : "./schemas/reference-data/XrefSetCreateResponse.yaml" + }, + "XrefSetMetadata" : { + "$ref" : "./schemas/reference-data/XrefSetMetadata.yaml" + }, + "XrefSetSearchResult" : { + "$ref" : "./schemas/reference-data/XrefSetSearchResult.yaml" + }, + "XrefSetSearchResultEntry" : { + "$ref" : "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + }, + "UploadRGRequest" : { + "$ref" : "./schemas/reference-genome/UploadRGRequest.yaml" + }, + "AccessionResponse" : { + "$ref" : "./schemas/common/AccessionResponse.yaml" + }, + "RGItem" : { + "$ref" : "./schemas/reference-genome/RGItem.yaml" + }, + "Sample" : { + "$ref" : "./schemas/sample/Sample.yaml" + }, + "Group" : { + "$ref" : "./schemas/scim/Group.yaml" + }, + "Member" : { + "$ref" : "./schemas/scim/Member.yaml" + }, + "GroupPatch" : { + "$ref" : "./schemas/scim/GroupPatch.yaml" + }, + "PatchOperation" : { + "$ref" : "./schemas/scim/PatchOperation.yaml" + }, + "FilterGroupsResponse" : { + "$ref" : "./schemas/scim/FilterGroupsResponse.yaml" + }, + "GroupResponse" : { + "$ref" : "./schemas/scim/GroupResponse.yaml" + }, + "Meta" : { + "$ref" : "./schemas/scim/Meta.yaml" + }, + "SCIMErrorResponse" : { + "$ref" : "./schemas/scim/SCIMErrorResponse.yaml" + }, + "BaseErrorResponse" : { + "$ref" : "./schemas/scim/BaseErrorResponse.yaml" + }, + "ErrorMessage" : { + "$ref" : "./schemas/scim/ErrorMessage.yaml" + }, + "User" : { + "$ref" : "./schemas/scim/User.yaml" + }, + "Email" : { + "$ref" : "./schemas/scim/Email.yaml" + }, + "UserPatch" : { + "$ref" : "./schemas/scim/UserPatch.yaml" + }, + "FilterUsersResponse" : { + "$ref" : "./schemas/scim/FilterUsersResponse.yaml" + }, + "UserResponse" : { + "$ref" : "./schemas/scim/UserResponse.yaml" + }, + "VariantMetadataWithId" : { + "$ref" : "./schemas/variant/VariantMetadataWithId.yaml" + }, + "VariantItem" : { + "$ref" : "./schemas/variant/VariantItem.yaml" + }, + "VariantResponse" : { + "$ref" : "./schemas/variant/VariantResponse.yaml" + } + }, + "securitySchemes" : { + "Access-token" : { + "in" : "header", + "name" : "Authorization", + "type" : "apiKey" + }, + "Genestack-API-Token" : { + "in" : "header", + "name" : "Genestack-API-Token", + "type" : "apiKey" + } + }, + "parameters" : { + "AllowDuplicates" : { + "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", + "in" : "query", + "name" : "allow_dups", + "schema" : { + "default" : false, + "type" : "boolean" + } + } + } + } +} diff --git a/openapi/v1/preparationCurator.yaml b/openapi/v1/preparationCurator.yaml deleted file mode 100644 index 56c3dee3..00000000 --- a/openapi/v1/preparationCurator.yaml +++ /dev/null @@ -1,471 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the preparationCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Preparation SPoT as Curator -paths: - /api/v1/as-curator/preparations: - get: - description: |- - Retrieve preparation metadata objects by searching/listing preparation metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchPreparationsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for preparation metadata objects - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/by/group/{id}: - get: - operationId: getPreparationsByGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparations related to the given group - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/{id}: - get: - operationId: getPreparationAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updatePreparationAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a preparation object - tags: - - Preparation SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/preparations/{id}/versions: - get: - operationId: getPreparationVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Preparation SPoT as Curator - /api/v1/as-curator/preparations/{id}/versions/{version}: - get: - operationId: getPreparationByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/preparationUser.yaml b/openapi/v1/preparationUser.yaml deleted file mode 100644 index 8d3ed782..00000000 --- a/openapi/v1/preparationUser.yaml +++ /dev/null @@ -1,414 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the preparationUser API endpoints for ODM. These are typically used to find and retrieve preparation metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Preparation SPoT as User -paths: - /api/v1/as-user/preparations: - get: - description: |- - Retrieve preparation metadata objects by searching/listing preparation metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchPreparationsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by preparation metadata (key-value metadata pair(s)). - E.g. `Digestion=Trypsin` - in: query - name: filter - schema: - type: string - - description: Search for preparation objects via a full-text query over all - preparation metadata fields. E.g. `"reversed-phase liquid chromatography"`. - Queries matching dictionary terms are automatically expanded to include - synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for preparation metadata objects - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/by/group/{id}: - get: - operationId: getPreparationsByGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve preparations related to the given group - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}: - get: - operationId: getPreparationAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}/versions: - get: - operationId: getPreparationVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Preparation SPoT as User - /api/v1/as-user/preparations/{id}/versions/{version}: - get: - operationId: getPreparationByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Preparation" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single preparation object by ID (accession) - tags: - - Preparation SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - Preparation: - $ref: "./schemas/preparation/Preparation.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/referenceData.yaml b/openapi/v1/referenceData.yaml deleted file mode 100644 index a2873b57..00000000 --- a/openapi/v1/referenceData.yaml +++ /dev/null @@ -1,307 +0,0 @@ -openapi: 3.1.0 -info: - description: | - These API endpoints serve to upload and remove xrefsets, search in xrefsets and get details about them. These API endpoints are experimental. The parameters, request body and response body may change. - title: Xrefsets API - version: default-released -tags: -- name: Xrefset queries -paths: - /api/v1/xrefsets: - post: - operationId: create - requestBody: - description: |+ - Request body for creating a new xrefset. - ## Important: - The length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation. - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetCreateRequest" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetCreateResponse" - description: successful operation - "201": - content: {} - description: The objects were successfully created. The returned value is - a list of created objects. - "400": - content: {} - description: The object cannot be created. This error occurs when the supplied - data or metadata are incorrect. Please see error message for details - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to work with the xrefset. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Import a new xrefset file - tags: - - Xrefset queries - x-codegen-request-body-name: body - /api/v1/xrefsets/entries: - get: - description: |+ - ## Conditions - It is possible to supply a list of values for "targetId" and "sourceId". If non-empty lists of values for "targetId" and "sourceId" are supplied, the following search rule is applied: (sourceId = "S1" OR .. sourceId = "Sn") AND (targetId = "T1" OR .. targetId = "Tm"). - ## Important: - The length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation. - operationId: searchEntries - parameters: - - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ - \ mapping this is gene ID, e.g. \"ENSG00000146648\"" - explode: true - in: query - name: sourceId - schema: - items: - type: string - type: array - style: form - - description: "Supply targetId in the format \"targetId\". For transcript-gene\ - \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" - explode: true - in: query - name: targetId - schema: - items: - type: string - type: array - style: form - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetSearchResult" - description: Json object with the cursor and json array of retrieved xrefset - data. Response entries are ordered by xrefset ID and then by source ID. - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of entries across all xrefsets for given sourceId and - targetId - tags: - - Xrefset queries - /api/v1/xrefsets/{id}: - delete: - operationId: deleteFile - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - pattern: .* - type: string - responses: - "204": - content: {} - description: "Xrefset file successfully marked for deletion, mappings have\ - \ been removed" - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Not enough permissions to work with the xrefset. - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: |- - Delete a xrefset with all related data. - Only users who uploaded the xrefset are allowed to delete it. - tags: - - Xrefset queries - /api/v1/xrefsets/{id}/entries: - get: - description: |+ - ## Conditions - It is possible to supply a list of values for "targetId" and "sourceId". If non-empty lists of values for "targetId" and "sourceId" are supplied, the following search rule is applied: (sourceId = "S1" OR .. sourceId = "Sn") AND (targetId = "T1" OR .. targetId = "Tm"). - - operationId: searchEntriesWithinFile - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - type: string - - description: "Supply sourceId in the format \"sourceId\". For transcript-gene\ - \ mapping this is gene ID, e.g. \"ENSG00000146648\"" - explode: true - in: query - name: sourceId - schema: - items: - type: string - type: array - style: form - - description: "Supply targetId in the format \"targetId\". For transcript-gene\ - \ mapping this is transcript ID, e.g. \"ENST00000617423.4\"" - explode: true - in: query - name: targetId - schema: - items: - type: string - type: array - style: form - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: "This parameter determines the number of results to retrieve\ - \ per page, with the default set at 2000." - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetSearchResult" - description: Json object with the cursor and json array of retrieved xrefset - data. Response entries are ordered by xrefset ID and then by source ID. - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of entries for the given xrefset and given sourceId - and targetId - tags: - - Xrefset queries - /api/v1/xrefsets/{id}/metadata: - get: - operationId: getDetailsByAccession - parameters: - - description: xrefset ID - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/XrefSetMetadata" - description: "Object containing xrefset details, including user submitted\ - \ metadata and system info" - "400": - content: {} - description: Invalid data in the request. See the error message for details. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: The xrefset does not exist. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve xrefset details - tags: - - Xrefset queries -components: - schemas: - XrefSetCreateRequest: - $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" - XrefSetCreateResponse: - $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" - XrefSetMetadata: - $ref: "./schemas/reference-data/XrefSetMetadata.yaml" - XrefSetSearchResult: - $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" - XrefSetSearchResultEntry: - $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/referenceGenome.yaml b/openapi/v1/referenceGenome.yaml deleted file mode 100644 index d87e9611..00000000 --- a/openapi/v1/referenceGenome.yaml +++ /dev/null @@ -1,189 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - These API endpoints serve to upload and remove reference genomes as well as search and get details about them. - title: ODM API - version: default-released -tags: - - name: Reference genome -paths: - /api/v1/reference-genomes: - get: - operationId: search_reference_genomes - summary: List or search for Reference Genome objects - tags: - - Reference genome - description: |- - Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Paging - For performance reasons, this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit. - - ## List operation - - This endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects. - parameters: - - in: query - name: organism - description: Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`). - schema: - type: string - - in: query - name: assembly - description: Major version (for example, `GRCh38`). - schema: - type: string - - in: query - name: release - description: Ensembl reference genome minor version (for example, `75` or `109`). - schema: - type: string - - in: query - name: query - description: Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`). - schema: - type: string - - in: query - name: pageLimit - description: Maximum number of results to return per page (see Paging above). This value must be - between 0 and 2000 (inclusive). The default is 2000. - schema: - format: int32 - type: integer - - in: query - name: pageOffset - description: Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show - a page of results starting from the 101st result. The default value is 0. - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of objects. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - post: - operationId: upload - summary: Upload reference genome to ODM - tags: - - Reference genome - description: |- - In order to import reference genome file, please fill in the following fields: - - * `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format. - Note: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided. - * `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html). - Note: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list. - * `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html). - * `release` - Ensembl reference genome minor version (for example, `75` or `109`). - * `name` - customized reference genome title that is used for linkage variant files. - By default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`. - - Reference genome will be available after initialisation. Please track initialisation task status. - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/UploadRGRequest" - required: false - responses: - "201": - content: - application/json: - schema: - $ref: "#/components/schemas/AccessionResponse" - description: The object was successfully created. - "400": - content: { } - description: The object cannot be created. This error occurs when the supplied - data or metadata are incorrect. Please see error message for details. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: { } - description: Not enough permissions to call method. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] - x-codegen-request-body-name: body - /api/v1/reference-genomes/{id}: - get: - operationId: get_reference_genome_by_accession - summary: Retrieve a single Reference Genome object by ID (accession) - tags: - - Reference genome - parameters: - - in: path - name: id - description: Unique identifier (Genestack accession) of Reference Genome object. - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RGItem" - description: The request was successful. The returned value is the object. - "401": - content: { } - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: { } - description: No object exists with the given ID. - "500": - content: { } - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [ ] - - Genestack-API-Token: [ ] -components: - schemas: - UploadRGRequest: - $ref: "./schemas/reference-genome/UploadRGRequest.yaml" - AccessionResponse: - $ref: "./schemas/common/AccessionResponse.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - RGItem: - $ref: "./schemas/reference-genome/RGItem.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/sampleCurator.yaml b/openapi/v1/sampleCurator.yaml deleted file mode 100644 index c72b175b..00000000 --- a/openapi/v1/sampleCurator.yaml +++ /dev/null @@ -1,398 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the sampleCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Sample SPoT as Curator -paths: - /api/v1/as-curator/samples: - get: - description: |- - Retrieve sample metadata objects by searching/listing sample metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchSamplesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - - in: query - name: filter - schema: - type: string - - description: Search for sample objects via a full-text query over all sample - metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are - automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for sample metadata objects - tags: - - Sample SPoT as Curator - /api/v1/as-curator/samples/{id}: - get: - operationId: getSampleAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateSampleAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a sample object - tags: - - Sample SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/samples/{id}/versions: - get: - operationId: getSampleVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Sample SPoT as Curator - /api/v1/as-curator/samples/{id}/versions/{version}: - get: - operationId: getSampleByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Sample: - $ref: "./schemas/sample/Sample.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/sampleUser.yaml b/openapi/v1/sampleUser.yaml deleted file mode 100644 index 2984abc0..00000000 --- a/openapi/v1/sampleUser.yaml +++ /dev/null @@ -1,339 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the sampleUser API endpoints for ODM. These are typically used to find and retrieve sample metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Sample SPoT as User -paths: - /api/v1/as-user/samples: - get: - description: |- - Retrieve sample metadata objects by searching/listing sample metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects. - operationId: searchSamplesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by sample metadata (key-value metadata pair(s)). E.g. `"Species or strain"="Homo sapiens"` - - in: query - name: filter - schema: - type: string - - description: Search for sample objects via a full-text query over all sample - metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are - automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for sample metadata objects - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}: - get: - operationId: getSampleAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}/versions: - get: - operationId: getSampleVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Sample SPoT as User - /api/v1/as-user/samples/{id}/versions/{version}: - get: - operationId: getSampleByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Sample" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single sample object by ID (accession) - tags: - - Sample SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Sample: - $ref: "./schemas/sample/Sample.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/scimGroups.yaml b/openapi/v1/scimGroups.yaml deleted file mode 100644 index 45cbdd80..00000000 --- a/openapi/v1/scimGroups.yaml +++ /dev/null @@ -1,373 +0,0 @@ -openapi: 3.1.0 -info: - description: "This swagger page describes the API endpoints to add, edit and remove\ - \ groups. The endpoints are developed according to the SCIM 2.0 specification." - title: ODM API - version: default-released -tags: -- name: Groups -paths: - /api/v1/scim/Groups: - get: - description: |- - The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the "Manage Groups" permission, then a list of all groups. - The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK. - operationId: findGroups - parameters: - - description: |- - Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored. - Supported operators: -   eq - equal, the attribute and operator values must be identical for a match; -   Using other operators returns an error. - Groups can be filtered by displayName only. - Attribute names and attribute operators used in filters are case insensitive. - Examples of the request: -   filter=displayName eq "Curator". - in: query - name: filter - schema: - type: string - - description: "If excludedAttributes=members is specified in the request, groups\ - \ are returned without the members attribute. Other attributes are not supported\ - \ in excludedAttributes parameter and ignored in the request → all attributes\ - \ are returned in the response body." - in: query - name: excludedAttributes - schema: - type: string - - description: The 1-based index of the first result in the current set of list - results. - in: query - name: startIndex - schema: - format: int32 - type: integer - - description: The number of resources returned in a list response page. The - value by default is 100. - in: query - name: count - schema: - format: int32 - type: integer - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/FilterGroupsResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Incorrect syntax in the request. See the error message for - details. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of available groups - tags: - - Groups - post: - description: |- - The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the "Group admin" role. The "members" attribute in the request body must be empty, otherwise the endpoint returns an error. - The endpoint does not require any user permission. - The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name. - If there are attributes in the request body that ODM does not support, then ODM ignores them. - operationId: createGroup - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/Group" - required: true - responses: - "201": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/GroupResponse" - description: The operation is successful. The response body contains the - representation of the newly created group. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "409": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, data conflict. See the error\ - \ message for details." - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Add a new user group - tags: - - Groups - x-codegen-request-body-name: body - /api/v1/scim/Groups/{id}: - delete: - description: |- - The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated. - Permissions to call the endpoint: -   - If the user does not have the "Manage groups" permission: -     * the user has "Group admin" role - the user can delete the group; -     * the user has "Group member" role - the group can not be deleted, an error is returned; -     * the user is not a member of the specified group - the group can not be deleted, an error is returned. -   - If the user has the "Manage groups" permission - the user can delete the group regardless of user’s membership in this group. - operationId: deleteGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "204": - content: {} - description: The group has been successfully removed. No data is returned. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied group ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Group admin" role in the group - or the "Manage groups" permission is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Delete a group - tags: - - Groups - get: - description: |- - The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required: -   - If the user has the "Manage groups" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group; -   - If the user does not have the "Manage groups" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned. - operationId: getGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - - description: "If excludedAttributes=members is specified in the request, Groups\ - \ are returned without the members attribute. Other attributes are not supported\ - \ in excludedAttributes parameter and ignored in the request → all attributes\ - \ are returned in the response body." - in: query - name: excludedAttributes - schema: - type: string - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/GroupResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied group ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no available groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a group by id - tags: - - Groups - patch: - description: |- - The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group. - - Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification. - - The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK. - - A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned. - - The endpoint requires access to the group as admin of the group: the user has the "Admin group" role in the group or the user has the "Manage groups" permission. - operationId: patchGroup - parameters: - - description: "String, unique identifier of the group in ODM." - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/GroupPatch" - required: true - responses: - "204": - content: {} - description: Group is successfully updated. No data is returned - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be updated, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Group admin" role in the group - or the "Manage groups" permission is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no groups with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Update a group - tags: - - Groups - x-codegen-request-body-name: body -components: - schemas: - Group: - $ref: "./schemas/scim/Group.yaml" - Member: - $ref: "./schemas/scim/Member.yaml" - GroupPatch: - $ref: "./schemas/scim/GroupPatch.yaml" - PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" - FilterGroupsResponse: - $ref: "./schemas/scim/FilterGroupsResponse.yaml" - GroupResponse: - $ref: "./schemas/scim/GroupResponse.yaml" - Meta: - $ref: "./schemas/scim/Meta.yaml" - SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" - BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" - ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/scimUsers.yaml b/openapi/v1/scimUsers.yaml deleted file mode 100644 index bcfe92ff..00000000 --- a/openapi/v1/scimUsers.yaml +++ /dev/null @@ -1,376 +0,0 @@ -openapi: 3.1.0 -info: - description: "This swagger page describes the API endpoints to add, edit and remove\ - \ users. The endpoints are developed according to the SCIM 2.0 specification." - title: ODM API - version: default-released -tags: -- name: Users -paths: - /api/v1/scim/Users: - get: - description: "The endpoint returns a list of active users. The list can be filtered\ - \ by user attributes using the filter parameter. If no filtering parameters\ - \ are passed, then all users are returned. If there are no users in the response\ - \ body, the endpoint returns 200 OK. The \"Manage organization\" permission\ - \ is required." - operationId: findUsers - parameters: - - description: |- - Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored. - Supported operators: -   eq - equal, the attribute and operator values must be identical for a match; -   and - logical "and", the filter is only a match if both expressions evaluate to true; -   Using other operators returns an error. - Attribute names and attribute operators used in filters are case insensitive. - Examples of the request: -   filter=emails[type eq "work" and value eq "user@example.com"] - returns a user with login = user@example.com -   filter=userName eq "bjensen" -   filter=emails[type eq "work" and value eq "user@example.com"] and userName eq "bjensen". - in: query - name: filter - schema: - type: string - - description: The 1-based index of the first result in the current set of list - results. - in: query - name: startIndex - schema: - format: int32 - type: integer - - description: The number of resources returned in a list response page. The - value by default is 100. - in: query - name: count - schema: - format: int32 - type: integer - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/FilterUsersResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Incorrect syntax in the request. See the error message for - details. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of all active users - tags: - - Users - post: - description: |- - The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The "Manage organization" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the "Manage organization" permission. - Only one email can be specified. - operationId: createUser - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/User" - required: true - responses: - "201": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: The operation is successful. The response body contains the - representation of the newly created or updated user. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "409": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be created, data conflict. See the error\ - \ message for details." - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Add a new user - tags: - - Users - x-codegen-request-body-name: body - /api/v1/scim/Users/{id}: - delete: - operationId: deleteUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "204": - content: {} - description: The user has been successfully deactivated. No data is returned. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied user ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Deactivate a user - tags: - - Users - get: - description: "The endpoint returns an active user by id, where id is internal\ - \ user id in ODM. The \"Manage organization\" permission is required." - operationId: getUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: The request was successful. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: The supplied user ID is invalid. - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no available users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a user by id - tags: - - Users - patch: - description: |- - The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM. - - Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification. - - The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK. - - A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned. - - It is possible to update attributes of the deactivated users. - - The endpoint requires the "Manage organization" permission. - operationId: patchUser - parameters: - - description: "String, unique identifier of the user in ODM." - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/UserPatch" - required: true - responses: - "200": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/UserResponse" - description: User is successfully updated. The response body contains the - representation of the updated user. - "400": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: "The object cannot be updated, the supplied data or metadata\ - \ are incorrect. See the error message for details." - "401": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: Operation is not permitted. The "Manage organization" permission - is required. - "404": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/SCIMErrorResponse" - description: There are no users with the specified id. - "500": - content: - application/scim+json: - schema: - $ref: "#/components/schemas/BaseErrorResponse" - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Genestack-API-Token: [] - - Access-token: [] - summary: Update a user - tags: - - Users - x-codegen-request-body-name: body -components: - schemas: - User: - $ref: "./schemas/scim/User.yaml" - Email: - $ref: "./schemas/scim/Email.yaml" - UserPatch: - $ref: "./schemas/scim/UserPatch.yaml" - PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" - FilterUsersResponse: - $ref: "./schemas/scim/FilterUsersResponse.yaml" - UserResponse: - $ref: "./schemas/scim/UserResponse.yaml" - Meta: - $ref: "./schemas/scim/Meta.yaml" - SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" - BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" - ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/studyCurator.yaml b/openapi/v1/studyCurator.yaml deleted file mode 100644 index f881a10e..00000000 --- a/openapi/v1/studyCurator.yaml +++ /dev/null @@ -1,397 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the studyCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Study SPoT as Curator -paths: - /api/v1/as-curator/studies: - get: - description: |- - Retrieve study metadata objects by searching/listing study metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all study objects. - operationId: searchStudiesAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - - - in: query - name: filter - schema: - type: string - - description: Search for study objects via a full-text query over all study - metadata fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching - dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for study metadata objects - tags: - - Study SPoT as Curator - /api/v1/as-curator/studies/{id}: - get: - operationId: getStudyAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as Curator - patch: - description: |- - ## Basic operation - The object metadata is updated using the supplied map of attribute names to attribute values. There are three cases: - 1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata. - 2. The attribute name already exists in the object metadata. In this case, the value is updated. - 3. The attribute value is `null`.In this case, the attribute is removed from the object metadata. - - ## Attribute values - The attribute values are intelligently parsed as booleans, integers, etc. - operationId: updateStudyAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: "#/components/schemas/MetadataContent" - description: "Metadata in the form of `{key: value, key2: value2, ...}`" - required: false - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: "The objects was successfully created. The returned value is\ - \ the updated object, along with any warnings." - "400": - content: {} - description: The supplied object ID or metadata is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Update a study object - tags: - - Study SPoT as Curator - x-codegen-request-body-name: body - /api/v1/as-curator/studies/{id}/versions: - get: - operationId: getStudyVersionsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Study SPoT as Curator - /api/v1/as-curator/studies/{id}/versions/{version}: - get: - operationId: getStudyByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/studyUser.yaml b/openapi/v1/studyUser.yaml deleted file mode 100644 index ca54d746..00000000 --- a/openapi/v1/studyUser.yaml +++ /dev/null @@ -1,340 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the studyUser API endpoints for ODM. These are typically used to find and retrieve study metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Study SPoT as User -paths: - /api/v1/as-user/studies: - get: - description: |- - Retrieve study metadata objects by searching/listing study metadata. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all study objects. - operationId: searchStudiesAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: |+ - Filter by study metadata (key-value metadata pair(s)). E.g. `"Study Source"=ArrayExpress` - - - in: query - name: filter - schema: - type: string - - description: Search for study objects via a full-text query over all study - metadata fields. E.g. `"RNA-Seq of human dendritic cells"`. Queries matching - dictionary terms are automatically expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Attribute to sort by, with optional ascending/descending marker, of the form `"[+|-]"`. - - No marker or `"+"` indicates ascending sort, and `"-"` indicates descending sort. - - *Default:* sort by ID in ascending order. - in: query - name: sort - schema: - enum: - - id - - creation - - last_update - - name - - +id - - +creation - - +last_update - - +name - - -id - - -creation - - -last_update - - -name - type: string - - description: Maximum number of results to return. This value must be between - 0 and 2000 (inclusive). - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - text/tab-separated-values: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: List or search for study metadata objects - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}: - get: - operationId: getStudyAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}/versions: - get: - operationId: getStudyVersionsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of object versions by ID - tags: - - Study SPoT as User - /api/v1/as-user/studies/{id}/versions/{version}: - get: - operationId: getStudyByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/Study" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single study object by ID (accession) - tags: - - Study SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - Study: - $ref: "./schemas/study/Study.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/tasks.yaml b/openapi/v1/tasks.yaml deleted file mode 100644 index 7535177c..00000000 --- a/openapi/v1/tasks.yaml +++ /dev/null @@ -1,102 +0,0 @@ -openapi: 3.1.0 -info: - description: | - These API endpoints serve to work with asynchronous tasks. - title: Tasks API - version: default-released -tags: -- name: Tasks API -paths: - /api/v1/tasks/publish-versions: - post: - description: This endpoint publishes all information from drafts and creates - new metadata versions for each study/associated objects with unpublished changes. Only - curators with the ACCESS_ALL_DATA permission can use this method. - operationId: publishAllStudies - parameters: - - description: Supply text to name this version. If not supplied the version - name is set to “Auto-published by API call” - in: query - name: versionMessage - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "403": - content: {} - description: Forbidden - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Asynchronous task that publishes all pending versions across all studies - in the instance. - tags: - - Tasks API - /api/v1/tasks/{id}: - get: - description: Supply the accession (id) of an ODM task to retrieve metadata about - that task. - operationId: getTaskInfo - parameters: - - description: Accession of the task. - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/TaskInfo" - description: Task information. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve information about any ODM task. - tags: - - Tasks API -components: - schemas: - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/variantCurator.yaml b/openapi/v1/variantCurator.yaml deleted file mode 100644 index aa51ae7c..00000000 --- a/openapi/v1/variantCurator.yaml +++ /dev/null @@ -1,713 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the variantCurator APIs. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Variant SPoT as Curator -paths: - /api/v1/as-curator/variants: - get: - description: |+ - Retrieve all variant data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getAllVariantsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list. - in: query - name: variantRegion - schema: - items: - type: string - example: 2:233364596-233385916 - type: array - style: form - - description: Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list. - in: query - name: variantFeature - schema: - items: - type: string - example: ENSG00000227232 - type: array - style: form - - description: One or more specific variation IDs can be specified. E.g. `rs838705` - in: query - name: variantId - schema: - items: - type: string - example: rs334 - type: array - style: form - - description: |- - The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned. - - 1. pass - return gene variants which passed all filters - 2. noPass - return gene variants which failed one or more filters - in: query - name: variantFilter - schema: - enum: - - pass - - noPass - type: string - - description: |- - Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`. - Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. - Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. - This means any differences smaller than that won't be detected. For more precise results, please use range queries. - Combine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses - in: query - name: variantInfo - schema: - type: string - - description: Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantResponse" - description: Retrieved variant data. - "400": - content: {} - description: Variant data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple variant data and metadata objects - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchGroupsAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group/by/run/{id}: - get: - operationId: getVariantGroupByRunAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/group/{id}: - get: - operationId: getVariantGroupAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant group by ID (groupId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchVariantRunsAsCurator - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}: - get: - operationId: getVariantAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by ID (itemId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}/versions: - get: - operationId: getVariantVersionsAsCurator - parameters: - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of variant object versions by run ID (runId) - tags: - - Variant SPoT as Curator - /api/v1/as-curator/variants/{id}/versions/{version}: - get: - operationId: getVariantByVersionAsCurator - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the variant object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by run ID and its version - tags: - - Variant SPoT as Curator -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" - VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey diff --git a/openapi/v1/variantUser.yaml b/openapi/v1/variantUser.yaml deleted file mode 100644 index 644567aa..00000000 --- a/openapi/v1/variantUser.yaml +++ /dev/null @@ -1,714 +0,0 @@ -openapi: 3.1.0 -info: - description: |- - This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata. - - Before carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software. - - To try out calls in this swagger page: - - 1. Click the 'Authorize' button below to enter your API token - 2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button - 3. Enter parameter values that you wish to try - 4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears - - - The server response will be in the section that follows. - title: ODM API - version: default-released -tags: -- name: Variant SPoT as User -paths: - /api/v1/as-user/variants: - get: - description: |+ - Retrieve all variant data and metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: getAllVariantsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list. - in: query - name: variantRegion - schema: - items: - type: string - example: 2:233364596-233385916 - type: array - style: form - - description: Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list. - in: query - name: variantFeature - schema: - items: - type: string - example: ENSG00000227232 - type: array - style: form - - description: One or more specific variation IDs can be specified. E.g. `rs838705` - in: query - name: variantId - schema: - items: - type: string - example: rs334 - type: array - style: form - - description: |- - The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned. - - 1. pass - return gene variants which passed all filters - 2. noPass - return gene variants which failed one or more filters - in: query - name: variantFilter - schema: - enum: - - pass - - noPass - type: string - - description: |- - Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`. - Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. - Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. - Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. - This means any differences smaller than that won't be detected. For more precise results, please use range queries. - Combine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses - in: query - name: variantInfo - schema: - type: string - - description: Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list. - in: query - name: runFilter - schema: - $ref: "#/components/schemas/RunFilter" - style: form - - description: Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns. - explode: true - in: query - name: runSourceFilter - schema: - items: - type: string - example: Run Source ID - type: array - style: form - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantResponse" - description: Retrieved variant data. - "400": - content: {} - description: Variant data cannot be retrieved. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve multiple variant data and metadata objects - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group: - get: - description: |- - Retrieve all group metadata objects that match a query. - - ## Metadata full-text queries - Single words can be supplied as is, otherwise use speech marks (`"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\`). - - ## Metadata filters - Metadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`"`). - - ## Combinations - Metadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions. - - ## Versioning - Specific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out. - - Example usage: - useVersions=* (query all versions, including those without CHAIN_IDs) - useVersions=v2 (query the second version. If there is no second version then the data file is not queried) - useVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) ) - useVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version) - useVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496) - - Rules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator. - - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true. - - ## List operation - - This endpoint can be called with no `query` parameter. Doing so returns a list of all data objects. - operationId: searchVariantGroupsAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Filter by variant metadata (key-value metadata pair(s)). E.g. - `"Variant Source"=dbSNP`. - in: query - name: filter - schema: - type: string - - description: Search for variant objects via a full text query over all variant - metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically - expanded to include synonyms. - in: query - name: query - schema: - type: string - - description: |- - If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query. - - For example, the search query "Body fluid" can be expanded to include the term "Blood" (a child term of "Body fluid") so files containing either "Body fluid" or "Blood" in their metadata will be returned in the search results. - - The parent-child relationship is defined by the key "broaders" or "subClassOf" in the dictionary. - - If the full query term is not present in a dictionary then this parameter has no effect. - in: query - name: searchSpecificTerms - schema: - type: boolean - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - - description: |- - Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax: - - \* or `v` or ``:`v` or ``:`` - in: query - name: useVersions - schema: - type: string - - description: "Show the page {pageOffset+1} results from the start of the results.\ - \ E.g. 100 will show a page of results starting from the 101st result.\ - \ The default value is 0." - in: query - name: pageOffset - schema: - format: int32 - type: integer - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/ListResponse" - description: The request was successful. The returned value is a list of - objects. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve groups that match a query - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group/by/run/{id}: - get: - operationId: getVariantGroupByRunAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Unique identifier (runId) of the run. - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single group object by run ID (runId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/group/{id}: - get: - operationId: getVariantGroupAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant group identifier (groupId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantMetadataWithId" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant group by ID (groupId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/runs/by/group/{id}: - get: - description: |+ - ## Paging - For performance reasons this endpoint returns results in "pages" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. - - operationId: searchVariantRunsAsUser - parameters: - - description: Unique identifier (accession) of the object. - in: path - name: id - required: true - schema: - type: string - - description: The page tag to resume results from (see paging above). - in: query - name: cursor - schema: - type: string - - description: Maximum number of results to return per page (see Paging above). - This value must be between 0 and 2000 (inclusive). The default is 2000. - in: query - name: pageLimit - schema: - format: int32 - type: integer - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/RunsResponse" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve run objects related to the given group - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}: - get: - operationId: getVariantAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object unique identifier (itemId). - in: path - name: id - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/VariantItem" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by ID (itemId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}/versions: - get: - operationId: getVariantVersionsAsUser - parameters: - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - schema: - items: - $ref: "#/components/schemas/CommitInfo" - type: array - description: The request was successful. The returned value is the list - of object versions. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a list of variant object versions by run ID (runId) - tags: - - Variant SPoT as User - /api/v1/as-user/variants/{id}/versions/{version}: - get: - operationId: getVariantByVersionAsUser - parameters: - - description: Supply this parameter with the value `term_id` as part of the - query to return extended information including IDs for values and dictionaries. - in: query - name: responseFormat - schema: - $ref: "#/components/schemas/ResponseFormat" - - description: Variant object run ID (runId). - in: path - name: id - required: true - schema: - type: string - - description: Unique version of the variant object. - in: path - name: version - required: true - schema: - type: string - - description: |- - The parameter defines amount of metadata attributes to return: - - 1. `minimal_data` - return metadata attributes according to the default template. - 2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints. - 3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints. - in: query - name: returnedMetadataFields - schema: - enum: - - minimal_data - - extended_data_included - - original_data_included - type: string - responses: - "200": - content: - application/json: - schema: - $ref: "#/components/schemas/SignalRun" - description: The request was successful. The returned value is the object. - "400": - content: {} - description: The supplied object ID is invalid. - "401": - content: {} - description: |- - User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token]) - or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page). - "404": - content: {} - description: No object exists with the given ID. - "500": - content: {} - description: "An internal server error occurred. This indicates an unexpected\ - \ failure in the Genestack system, please file a bug report to support@genestack.com,\ - \ including the error details." - security: - - Access-token: [] - - Genestack-API-Token: [] - summary: Retrieve a single variant object by run ID and its version - tags: - - Variant SPoT as User -components: - schemas: - CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" - IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" - ListResponse: - $ref: "./schemas/common/ListResponse.yaml" - MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" - MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" - VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" - PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" - ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" - RunFilter: - $ref: "./schemas/common/RunFilter.yaml" - RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" - SignalRun: - $ref: "./schemas/common/SignalRun.yaml" - VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" - VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" - securitySchemes: - Access-token: - in: header - name: Authorization - type: apiKey - Genestack-API-Token: - in: header - name: Genestack-API-Token - type: apiKey From bdfba6ca82c62ba2731ceda15764eea87b6e9884 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:06:01 +0100 Subject: [PATCH 14/29] [ODM-13126] Dummy ctrl+x and ctrl+v --- .gitignore | 1 + openapi/v1/odm.yaml | 2631 +- openapi/v1/odmApi.json | 21233 ---------------- openapi/v1/schemas/afile/AFile.yaml | 1 - openapi/v1/schemas/cell/CRRequest.yaml | 7 - openapi/v1/schemas/cell/CRResponse.yaml | 21 - openapi/v1/schemas/cell/Cell.yaml | 33 - openapi/v1/schemas/cell/CellListResponse.yaml | 34 - openapi/v1/schemas/cell/DERequest.yaml | 22 - openapi/v1/schemas/cell/DEResponse.yaml | 97 - openapi/v1/schemas/cell/GSRequest.yaml | 17 - openapi/v1/schemas/cell/GSResponse.yaml | 68 - .../v1/schemas/common/AccessionResponse.yaml | 8 - openapi/v1/schemas/common/CommitInfo.yaml | 17 - .../v1/schemas/common/IntegrationHelper.yaml | 1 - openapi/v1/schemas/common/ListResponse.yaml | 23 - openapi/v1/schemas/common/MetaResponse.yaml | 14 - .../v1/schemas/common/MetadataContent.yaml | 1 - openapi/v1/schemas/common/MetadataWithId.yaml | 10 - openapi/v1/schemas/common/PaginationInfo.yaml | 19 - openapi/v1/schemas/common/ResponseFormat.yaml | 3 - openapi/v1/schemas/common/RunFilter.yaml | 4 - openapi/v1/schemas/common/RunsResponse.yaml | 16 - openapi/v1/schemas/common/SignalRun.yaml | 1 - .../v1/schemas/expression/ExpressionItem.yaml | 57 - .../expression/ExpressionResponse.yaml | 37 - .../flow-cytometry/FlowCytometryItem.yaml | 43 - .../flow-cytometry/FlowCytometryResponse.yaml | 39 - .../v1/schemas/integration/AppliedFilter.yaml | 16 - .../integration/AttributeInvalidValue.yaml | 26 - .../AttributeValidationSummary.yaml | 29 - .../v1/schemas/integration/BatchOfIds.yaml | 32 - openapi/v1/schemas/integration/DataItem.yaml | 6 - .../schemas/integration/DataPresentation.yaml | 13 - .../v1/schemas/integration/FilterOption.yaml | 16 - .../integration/FilterOptionGroup.yaml | 26 - .../integration/FindObjectsResponse.yaml | 78 - .../integration/GroupValidationSummary.yaml | 47 - openapi/v1/schemas/integration/IMetadata.yaml | 21 - openapi/v1/schemas/integration/Link.yaml | 21 - .../integration/MetadataPresentation.yaml | 20 - .../integration/MetainfoKeyForSummary.yaml | 13 - .../v1/schemas/integration/ObjectsPage.yaml | 57 - .../v1/schemas/integration/OmicsResponse.yaml | 24 - .../OmicsResponseDataPresentation.yaml | 18 - .../OmicsResponseMetadataPresentation.yaml | 18 - .../OmicsResponseMetadataWithId.yaml | 18 - .../v1/schemas/integration/PageRequest.yaml | 15 - .../v1/schemas/integration/Relationships.yaml | 14 - .../integration/SearchStudyRequest.yaml | 30 - .../schemas/integration/SourceTypePair.yaml | 13 - .../schemas/integration/StreamingOutput.yaml | 1 - .../schemas/integration/StudySearchInfo.yaml | 46 - .../integration/StudyValidationSummary.yaml | 80 - .../schemas/integration/ValidationError.yaml | 15 - .../schemas/job/ExceptionTypeAndMessage.yaml | 9 - .../job/ImportAFileFromMultipartRequest.yaml | 28 - .../v1/schemas/job/ImportAFileRequest.yaml | 34 - .../job/ImportCellsFromMultipartRequest.yaml | 18 - .../v1/schemas/job/ImportCellsRequest.yaml | 9 - ...pressionSignalRunFromMultipartRequest.yaml | 34 - .../job/ImportExpressionSignalRunRequest.yaml | 42 - .../ImportMetadataFromMultipartRequest.yaml | 21 - .../v1/schemas/job/ImportMetadataRequest.yaml | 21 - .../ImportSignalRunFomMultipartRequest.yaml | 27 - .../schemas/job/ImportSignalRunRequest.yaml | 30 - openapi/v1/schemas/job/Info.yaml | 48 - openapi/v1/schemas/job/JobRuntimeError.yaml | 19 - openapi/v1/schemas/job/Output.yaml | 48 - openapi/v1/schemas/library/Library.yaml | 1 - .../manage-data/DetachedCollection.yaml | 25 - .../schemas/manage-data/DetachedObject.yaml | 30 - .../v1/schemas/manage-data/ManagedObject.yaml | 21 - .../v1/schemas/preparation/Preparation.yaml | 1 - .../reference-data/XrefSetCreateRequest.yaml | 26 - .../reference-data/XrefSetCreateResponse.yaml | 56 - .../reference-data/XrefSetMetadata.yaml | 29 - .../reference-data/XrefSetSearchResult.yaml | 19 - .../XrefSetSearchResultEntry.yaml | 17 - .../v1/schemas/reference-genome/RGItem.yaml | 31 - .../reference-genome/UploadRGRequest.yaml | 23 - openapi/v1/schemas/sample/Sample.yaml | 1 - .../v1/schemas/scim/BaseErrorResponse.yaml | 10 - openapi/v1/schemas/scim/Email.yaml | 14 - openapi/v1/schemas/scim/ErrorMessage.yaml | 7 - .../v1/schemas/scim/FilterGroupsResponse.yaml | 26 - .../v1/schemas/scim/FilterUsersResponse.yaml | 26 - openapi/v1/schemas/scim/Group.yaml | 38 - openapi/v1/schemas/scim/GroupPatch.yaml | 31 - openapi/v1/schemas/scim/GroupResponse.yaml | 12 - openapi/v1/schemas/scim/Member.yaml | 16 - openapi/v1/schemas/scim/Meta.yaml | 14 - openapi/v1/schemas/scim/PatchOperation.yaml | 20 - .../v1/schemas/scim/SCIMErrorResponse.yaml | 30 - openapi/v1/schemas/scim/User.yaml | 49 - openapi/v1/schemas/scim/UserPatch.yaml | 31 - openapi/v1/schemas/scim/UserResponse.yaml | 12 - openapi/v1/schemas/study/Study.yaml | 1 - openapi/v1/schemas/tasks/TaskInfo.yaml | 43 - openapi/v1/schemas/variant/VariantItem.yaml | 82 - .../variant/VariantMetadataWithId.yaml | 15 - .../v1/schemas/variant/VariantResponse.yaml | 71 - 102 files changed, 2533 insertions(+), 23854 deletions(-) delete mode 100644 openapi/v1/odmApi.json diff --git a/.gitignore b/.gitignore index f53d807f..f33ef450 100644 --- a/.gitignore +++ b/.gitignore @@ -26,4 +26,5 @@ node_modules # Ignore merged file and one downloaded for processor-controller /openapi/v1/odmApi.yaml +/openapi/v1/odmApi.json /openapi/v1/processorsController.yaml diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 24fb56fe..745744c1 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -23883,203 +23883,2636 @@ paths: components: schemas: Cell: - $ref: "./schemas/cell/Cell.yaml" + type: object + #schema is not described because of dynamic attributes' limited support in openapi-generator + description: |+ + Cell object having required, optional and dynamic attributes. + + **Required:** + - `cellId`: string - unique cell identifier, which consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. + - `barcode`: string - raw barcode of the cell, e.g. `AAACCTGAGCGCTCCA-1`. + - `batch`: string - identifier of an origin object, such as a sample or a library, that this cell belongs to, e.g. `SAMPLE_001`. + + **Optional:** + - `cellType`: string - inferred or annotated type, e.g. `T cell`. + - `cluster`: string - clustering labels, e.g. `leiden_res1`. + - `nCounts`: integer - total UMI count (Unique Molecular Identifier), e.g. `1250`. + - `percentMito`: number - percentage of mitochondrial gene expression, e.g. `5.2`. + - `umap`: array of two or three numbers - dimensionality reduction results (Uniform Manifold Approximation and Projection), e.g. `[1.23, 0.45]`. + - `pca`: array of between 2 and 100 numbers - dimensionality reduction results (Principal Component Analysis results), e.g. `[0.12, 0.34]`. + - `tsne`: array of two or three numbers - dimensionality reduction results (t-distributed Stochastic Neighbor Embedding), e.g. `[1.23, 0.45]`. + + **Dynamic:** + - Any additional attributes in a form of key-value pairs, which can vary between different cell objects. + example: + cellId: "GSF123456-AAACCTGAGCGCTCCA-1" + barcode: "AAACCTGAGCGCTCCA-1" + batch: "SAMPLE_001" + cellType: "T cell" + cluster: "leiden_res1" + nCounts: 1250 + percentMito: 5.2 + umap: [ 1.23, 0.45 ] + pca: [ 0.12, 0.34 ] + tsne: [ 1.23, 0.45 ] + assay_custom: "10x 3' v2" CellListResponse: - $ref: "./schemas/cell/CellListResponse.yaml" + type: object + properties: + data: + items: + $ref: "#/components/schemas/Cell" + type: array + cursor: + type: string + components: + schemas: + Cell: + $ref: "./Cell.yaml" + example: + cursor: "GSF123456-AAAGATGGTTCCTCCA-1" + data: + - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" + barcode: "AAACCTGAGCGCTCCA-1" + batch: "SAMPLE_001" + cellType: "T cell" + cluster: "leiden_res1" + nCounts: 1250 + percentMito: 5.2 + umap: [ 1.23, 0.45 ] + pca: [ 0.12, 0.34 ] + tsne: [ 1.23, 0.45 ] + assay_custom: "10x 3' v2" + - cellId: "GSF222333-AAAGATGGTTCCTCCA-1" + barcode: "AAAGATGGTTCCTCCA-1" + batch: "SAMPLE_001" + cellType: "naive B cell" + nCounts: 340 + pca: [ 0.2, 2.8 ] + primary_custom: "True" + tissue_custom: "blood" CommitInfo: - $ref: "./schemas/common/CommitInfo.yaml" + example: + author: author + message: message + version: version + timestamp: 0 + properties: + author: + type: string + message: + type: string + timestamp: + format: int64 + type: integer + version: + readOnly: true + type: string + type: object ExpressionItem: - $ref: "./schemas/expression/ExpressionItem.yaml" + example: + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + expression: 1.82 + feature: + genes: MYO9A, + groupingKey: VRSLGGISPSEDRR + gene: gene + description: description + value: + value: 1.82 + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + gene: + type: string + expression: + example: 1.82 + format: double + type: number + feature: + example: + genes: MYO9A, + groupingKey: VRSLGGISPSEDRR + oneOf: + - type: object + - type: string + readOnly: true + value: + example: + value: 1.82 + type: object + patternProperties: + "^.*$": + format: double + oneOf: + - type: number + - type: string # Inf or -Inf + description: + type: string + readOnly: true + type: object ExpressionResponse: - $ref: "./schemas/expression/ExpressionResponse.yaml" + example: + cursor: cursor + data: + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + gene: gene + feature: feature + expression: 1.82 + value: + value: 1.82 + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + gene: gene + feature: feature + expression: 1.82 + value: + value: 1.82 + properties: + data: + items: + $ref: "#/components/schemas/ExpressionItem" + type: array + cursor: + type: string + type: object + components: + schemas: + ExpressionItem: + $ref: "./ExpressionItem.yaml" IntegrationHelper: - $ref: "./schemas/common/IntegrationHelper.yaml" + type: object ListResponse: - $ref: "./schemas/common/ListResponse.yaml" + example: + data: + - { } + - { } + meta: + pagination: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + meta: + $ref: "#/components/schemas/MetaResponse" + data: + items: + properties: { } + type: object + type: array + type: object + components: + schemas: + MetaResponse: + $ref: "./MetaResponse.yaml" MetaResponse: - $ref: "./schemas/common/MetaResponse.yaml" + example: + pagination: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + pagination: + $ref: "#/components/schemas/PaginationInfo" + type: object + components: + schemas: + PaginationInfo: + $ref: "./PaginationInfo.yaml" MetadataContent: - $ref: "./schemas/common/MetadataContent.yaml" + type: object MetadataWithId: - $ref: "./schemas/common/MetadataWithId.yaml" + example: + itemId: itemId + metadata: { } + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + type: object PaginationInfo: - $ref: "./schemas/common/PaginationInfo.yaml" + example: + total: 6 + offset: 1 + count: 0 + limit: 5 + properties: + count: + format: int32 + type: integer + total: + format: int64 + type: integer + offset: + format: int32 + type: integer + limit: + format: int32 + type: integer + type: object RunFilter: - $ref: "./schemas/common/RunFilter.yaml" + items: + type: string + example: runId + type: array RunsResponse: - $ref: "./schemas/common/RunsResponse.yaml" + example: + cursor: "1" + data: + - runId: "1" + sampleSourceId: "exp4-human-100well.ATATCCTACTACTTAACTAG" + - runId: "2" + sampleSourceId: "exp4-human-100well.TTACCTAAGTTTGATATATT" + properties: + cursor: + type: string + data: + items: + properties: { } + type: object + type: array + type: object ResponseFormat: - $ref: "./schemas/common/ResponseFormat.yaml" + enum: + - term_id + type: string SignalRun: - $ref: "./schemas/common/SignalRun.yaml" + type: object AFile: - $ref: "./schemas/afile/AFile.yaml" + type: object FlowCytometryItem: - $ref: "./schemas/flow-cytometry/FlowCytometryItem.yaml" + example: + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + runId: runId + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + feature: + type: object + properties: + readoutType: + type: string + cellPopulation: + type: string + marker: + type: string + value: + type: object + properties: + value: + type: number + type: object FlowCytometryResponse: - $ref: "./schemas/flow-cytometry/FlowCytometryResponse.yaml" + example: + cursor: cursor + data: + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + - itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + feature: + readoutType: readoutType + cellPopulation: cellPopulation + marker: marker + value: + value: 0.8008281904610115 + properties: + data: + items: + $ref: "#/components/schemas/FlowCytometryItem" + type: array + cursor: + type: string + type: object + components: + schemas: + FlowCytometryItem: + $ref: "./FlowCytometryItem.yaml" AttributeInvalidValue: - $ref: "./schemas/integration/AttributeInvalidValue.yaml" + example: + count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + value: + oneOf: + - properties: { } + type: object + - type: string + count: + format: int64 + type: integer + errors: + items: + $ref: "#/components/schemas/ValidationError" + type: array + type: object + components: + schemas: + ValidationError: + $ref: "./ValidationError.yaml" AttributeValidationSummary: - $ref: "./schemas/integration/AttributeValidationSummary.yaml" + example: + attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + attributeName: + type: string + attributeInvalidValues: + items: + $ref: "#/components/schemas/AttributeInvalidValue" + type: array + type: object + components: + schemas: + AttributeInvalidValue: + $ref: "./AttributeInvalidValue.yaml" BatchOfIds: - $ref: "./schemas/integration/BatchOfIds.yaml" + description: Request model for getting links by many IDs. + example: + firstType: study + firstIds: + - firstIds + - firstIds + offset: 0 + limit: 0 + properties: + firstType: + description: Type of the objects. + example: study + type: string + firstIds: + description: Array of the object IDs with the same type. + items: + type: string + type: array + uniqueItems: true + offset: + description: 'Param says to skip that many links before beginning to return links. + Default: 0.' + format: int32 + type: integer + limit: + description: 'Param says to limit the count of returned links. Default: 1000.' + format: int32 + type: integer + required: + - firstIds + - firstType + type: object DataItem: - $ref: "./schemas/integration/DataItem.yaml" + properties: + itemId: + type: string + metadata: + type: object + type: object DataPresentation: - $ref: "./schemas/integration/DataPresentation.yaml" + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + relationships: + $ref: "#/components/schemas/Relationships" + type: object + components: + schemas: + Relationships: + $ref: "./Relationships.yaml" GroupValidationSummary: - $ref: "./schemas/integration/GroupValidationSummary.yaml" + example: + groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + groupAccession: + type: string + attributes: + items: + $ref: "#/components/schemas/AttributeValidationSummary" + type: array + type: object + components: + schemas: + AttributeValidationSummary: + $ref: "./AttributeValidationSummary.yaml" IMetadata: - $ref: "./schemas/integration/IMetadata.yaml" + properties: + source: + format: uri + type: string + name: + type: string + public: + type: boolean + id: + type: string + content: + type: object + dataType: + type: string + contentMap: + type: object + metadataContent: + type: object + fileIdAssociatedWithTemplate: + type: string + type: object Library: - $ref: "./schemas/library/Library.yaml" + type: object Link: - $ref: "./schemas/integration/Link.yaml" + description: Link between two objects. Each of them represented as a unique pair of + ID (accession) and unique type. + example: + firstId: firstId + firstType: firstType + secondId: secondId + secondType: secondType + properties: + firstId: + description: Object ID (accession) (e.g. accession of study) + type: string + firstType: + description: Type of the object (e.g. study) + type: string + secondId: + description: Object ID (accession) (e.g. accession of study) + type: string + secondType: + description: Type of the object (e.g. study) + type: string + type: object MetadataPresentation: - $ref: "./schemas/integration/MetadataPresentation.yaml" + description: |- + A description of object metadata. + + This will contain: + - `genestack:accession`: the object ID + - `Study Title` (for studies) + - `Sample ID` (for samples) + - all other attributes defined in the linked template (if any) + properties: + metadata: + $ref: "#/components/schemas/IMetadata" + relationships: + $ref: "#/components/schemas/Relationships" + type: object + components: + schemas: + IMetadata: + $ref: "./IMetadata.yaml" + Relationships: + $ref: "./Relationships.yaml" OmicsResponse: - $ref: "./schemas/integration/OmicsResponse.yaml" + example: + cursor: cursor + data: + - { } + - { } + log: + - log + - log + resultsExhausted: true + properties: + data: + items: + properties: { } + type: object + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object OmicsResponseDataPresentation: - $ref: "./schemas/integration/OmicsResponseDataPresentation.yaml" + properties: + data: + items: + $ref: "#/components/schemas/DataPresentation" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + DataPresentation: + $ref: "./DataPresentation.yaml" OmicsResponseMetadataPresentation: - $ref: "./schemas/integration/OmicsResponseMetadataPresentation.yaml" + properties: + data: + items: + $ref: "#/components/schemas/MetadataPresentation" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + MetadataPresentation: + $ref: "./MetadataPresentation.yaml" OmicsResponseMetadataWithId: - $ref: "./schemas/integration/OmicsResponseMetadataWithId.yaml" + properties: + data: + items: + $ref: "#/components/schemas/MetadataWithId" + type: array + resultsExhausted: + type: boolean + log: + items: + type: string + type: array + cursor: + type: string + type: object + components: + schemas: + MetadataWithId: + $ref: "../common/MetadataWithId.yaml" Preparation: - $ref: "./schemas/preparation/Preparation.yaml" + type: object Relationships: - $ref: "./schemas/integration/Relationships.yaml" + properties: + sample: + readOnly: true + type: string + cell: + readOnly: true + type: string + library: + readOnly: true + type: string + preparation: + readOnly: true + type: string + type: object SourceTypePair: - $ref: "./schemas/integration/SourceTypePair.yaml" + example: + firstType: firstType + secondType: secondType + properties: + firstType: + description: Type of the object (e.g. study) + readOnly: true + type: string + secondType: + description: Type of the object (e.g. study) + readOnly: true + type: string + type: object StreamingOutput: - $ref: "./schemas/integration/StreamingOutput.yaml" + type: object Study: - $ref: "./schemas/study/Study.yaml" + type: object StudyValidationSummary: - $ref: "./schemas/integration/StudyValidationSummary.yaml" + example: + samples: + - groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - groupAccession: groupAccession + attributes: + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - attributeName: attributeName + attributeInvalidValues: + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - count: 0 + value: { } + errors: + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + - errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + samples: + items: + $ref: "#/components/schemas/GroupValidationSummary" + type: array + type: object + components: + schemas: + GroupValidationSummary: + $ref: "./GroupValidationSummary.yaml" TaskInfo: - $ref: "./schemas/tasks/TaskInfo.yaml" + example: + application: application + createdBy: createdBy + endedAt: 6 + name: name + startedAt: 0 + id: id + status: CREATED + properties: + id: + readOnly: true + type: string + name: + readOnly: true + type: string + status: + enum: + - CREATED + - QUEUEING + - QUEUED + - STARTING + - RUNNING + - DONE + - FAILED + - BLOCKED_BY_DEPENDENCY_FAILURE + - KILLED + readOnly: true + type: string + application: + readOnly: true + type: string + startedAt: + format: int64 + readOnly: true + type: integer + endedAt: + format: int64 + readOnly: true + type: integer + createdBy: + readOnly: true + type: string + type: object ValidationError: - $ref: "./schemas/integration/ValidationError.yaml" + example: + errorType: VALUE_NOT_SET + errorMessage: errorMessage + properties: + errorType: + enum: + - VALUE_NOT_SET + - VOCABULARY_NOT_FOUND + - TYPE_NOT_MATCH + - MISSING_ATTRIBUTE + - SYNONYM_ATTRIBUTE + type: string + errorMessage: + type: string + type: object SearchStudyRequest: - $ref: "./schemas/integration/SearchStudyRequest.yaml" + example: + filters: + - type: FULL_TEXT + match: text_to_search + mode: STRICT + - type: SELECT + filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP + page: + offset: 6 + limit: 50 + properties: + filters: + example: + - type: FULL_TEXT + match: text_to_search + mode: STRICT + - type: SELECT + filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP + items: + $ref: "#/components/schemas/AppliedFilter" + type: array + page: + $ref: "#/components/schemas/PageRequest" + type: object + components: + schemas: + AppliedFilter: + $ref: "./AppliedFilter.yaml" + PageRequest: + $ref: "./PageRequest.yaml" AppliedFilter: - $ref: "./schemas/integration/AppliedFilter.yaml" + properties: + type: + enum: + - FULL_TEXT + - SELECT + type: string + filterOptionId: + type: string + match: + type: string + mode: + enum: + - STRICT + - USE_NARROWER_TERMS + type: string + type: object PageRequest: - $ref: "./schemas/integration/PageRequest.yaml" + example: + offset: 6 + limit: 50 + properties: + offset: + description: 'Param says to skip that many links before beginning to return links. + Default: 0.' + format: int32 + type: integer + limit: + description: 'Param says to limit the count of returned links. Default: 1000.' + example: 50 + format: int32 + type: integer + type: object FindObjectsResponse: - $ref: "./schemas/integration/FindObjectsResponse.yaml" + example: + filterOptionGroups: + - filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + objectsPage: + filteredCount: 0 + pageRequest: + offset: 6 + limit: 50 + content: + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + objectsPage: + $ref: "#/components/schemas/ObjectsPage" + filterOptionGroups: + items: + $ref: "#/components/schemas/FilterOptionGroup" + type: array + type: object + components: + schemas: + ObjectsPage: + $ref: "./ObjectsPage.yaml" + FilterOptionGroup: + $ref: "./FilterOptionGroup.yaml" ObjectsPage: - $ref: "./schemas/integration/ObjectsPage.yaml" + example: + filteredCount: 0 + pageRequest: + offset: 6 + limit: 50 + content: + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + - owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + filteredCount: + format: int64 + type: integer + pageRequest: + $ref: "#/components/schemas/PageRequest" + content: + items: + $ref: "#/components/schemas/StudySearchInfo" + type: array + type: object + components: + schemas: + PageRequest: + $ref: "./PageRequest.yaml" + StudySearchInfo: + $ref: "./StudySearchInfo.yaml" StudySearchInfo: - $ref: "./schemas/integration/StudySearchInfo.yaml" + example: + owner: owner + summary: + - values: + - values + - values + key: key + - values: + - values + - values + key: key + hasFacs: true + hasTranscriptomics: true + size: 1 + fileCreation: fileCreation + name: name + accession: accession + hasGenomic: true + properties: + accession: + type: string + name: + type: string + owner: + type: string + fileCreation: + format: int64 + type: string + size: + format: int64 + type: integer + hasFacs: + type: boolean + hasGenomic: + type: boolean + hasTranscriptomics: + type: boolean + summary: + items: + $ref: "#/components/schemas/MetainfoKeyForSummary" + type: array + type: object + components: + schemas: + MetainfoKeyForSummary: + $ref: "./MetainfoKeyForSummary.yaml" MetainfoKeyForSummary: - $ref: "./schemas/integration/MetainfoKeyForSummary.yaml" + example: + values: + - values + - values + key: key + properties: + key: + type: string + values: + items: + type: string + type: array + type: object FilterOptionGroup: - $ref: "./schemas/integration/FilterOptionGroup.yaml" + example: + filterId: filterId + hasMoreOptions: true + options: + - filterId: filterId + name: name + count: 5 + id: id + - filterId: filterId + name: name + count: 5 + id: id + properties: + filterId: + type: string + hasMoreOptions: + type: boolean + options: + items: + $ref: "#/components/schemas/FilterOption" + type: array + type: object + components: + schemas: + FilterOption: + $ref: "./FilterOption.yaml" FilterOption: - $ref: "./schemas/integration/FilterOption.yaml" + example: + filterId: filterId + name: name + count: 5 + id: id + properties: + id: + type: string + filterId: + type: string + name: + type: string + count: + format: int64 + type: integer + type: object DERequest: - $ref: "./schemas/cell/DERequest.yaml" + type: object + properties: + caseGroup: + $ref: 'CellGroupRequest.yaml' + controlGroup: + $ref: 'CellGroupRequest.yaml' + exQuery: + type: string + example: 'feature=ENSG00000230368,ENSG00000188976' + limit: + type: integer + format: int32 + description: This parameter determines the number of results to retrieve per page, with the default set at 2000. + example: 2000 + offset: + type: integer + format: int32 + description: This parameter allows skipping a specified number of results, with the default set at 0. + example: 0 + required: + - caseGroup + - controlGroup DEResponse: - $ref: "./schemas/cell/DEResponse.yaml" + type: object + properties: + resultsPerGene: + type: array + items: + $ref: '#/components/schemas/GeneEntry' + pagination: + $ref: '#/components/schemas/Pagination' + required: + - resultsPerGene + - pagination + components: + schemas: + GeneEntry: + type: object + # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. + properties: + geneId: + type: string + description: Gene identifier. + example: ENSG00000230368 + caseCellCount: + type: integer + description: Number of cells expressing the gene in the case group. + example: 8450 + controlCellCount: + type: integer + description: Number of cells expressing the gene in the control group. + example: 8123 + caseAvgEx: + type: number + format: double + description: Mean expression level across case cells. + example: 1.24 + controlAvgEx: + type: number + format: double + description: Mean expression level across control cells. + example: 0.62 + exDifference: + type: number + format: double + description: Numerical difference between average expressions. + example: 0.62 + foldChange: + type: number + format: double + description: Ratio of average expressions between case and control groups. + example: 2.0 + log2FC: + type: number + format: double + description: Logarithm with base 2 of the Fold change value. + example: 1.4594316186372973 + mannWhitneyU: + type: number + format: double + description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. + example: 1.5 + pValue: + type: number + format: double + description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. + example: 0.5536169919657803 + required: + - geneId + - caseCellCount + - controlCellCount + - caseAvgEx + - controlAvgEx + - exDifference + - foldChange + - log2FC + - mannWhitneyU + - pValue + Pagination: + type: object + properties: + currentResultsCount: + type: integer + format: int32 + description: Number of results returned in the current response. + example: 1 + limit: + type: integer + format: int32 + description: Results limit, used in the request. + example: 2000 + offset: + type: integer + format: int32 + description: Results offset, used in the request. + example: 0 + required: + - currentResultsCount + - limit + - offset GSRequest: - $ref: "./schemas/cell/GSRequest.yaml" + type: object + properties: + cellGroup: + $ref: 'CellGroupRequest.yaml' + geneNames: + type: array + items: + type: string + example: + - "ENSG00000230368" + - "ENSG00000188976" + - "ENSG00000188982" + exQuery: + type: string + example: '-3 < value < 3' + required: + - geneNames GSResponse: - $ref: "./schemas/cell/GSResponse.yaml" + type: object + properties: + resultsPerGene: + type: array + items: + $ref: '#/components/schemas/GeneSummaryEntry' + components: + schemas: + GeneSummaryEntry: + type: object + description: Per-gene summary statistics. + properties: + geneId: + type: string + description: Gene identifier. + example: "ENSG00000111640" + cellCount: + type: integer + format: int32 + description: Number of cells expressing the gene. + example: 8968167 + mean: + type: number + format: double + description: Mean expression + example: 7.747614311820911 + median: + type: number + format: double + description: Median expression + example: 7 + stdDev: + type: number + format: double + description: Standard deviation + example: 6.499314669429827 + min: + type: number + format: double + description: Minimum value + example: 1 + max: + type: number + format: double + description: Maximum value + example: 496 + quantiles: + type: array + description: | + List of quantile values from 0 to 1 (inclusive), with step 0.1 + example: | + [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] + items: + type: number + format: double + histogram: + type: array + description: | + Histogram as a list of [binStart, binEnd, count] triples. + Length depends of the selected sample size, maximum is 20. + example: | + [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), + (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] + items: + type: array + items: + type: number + format: double CRRequest: - $ref: "./schemas/cell/CRRequest.yaml" + type: object + properties: + cellGroup: + $ref: 'CellGroupRequest.yaml' + exQuery: + type: string + example: '-3 < value < 3' CRResponse: - $ref: "./schemas/cell/CRResponse.yaml" + type: object + required: + - countSelected + - countAvailable + - ratio + properties: + countSelected: + type: integer + format: int32 + description: Count of Cells selected with all queries and filters. + example: 1243393 + countAvailable: + type: integer + format: int32 + description: Count of all available Cells limited by Study and SLP queries and filters. + example: 9234945 + ratio: + type: number + format: double + description: Ratio value + example: 0.13465 ExceptionTypeAndMessage: - $ref: "./schemas/job/ExceptionTypeAndMessage.yaml" + example: + type: type + message: message + properties: + type: + type: string + message: + type: string + type: object ImportCellsRequest: - $ref: "./schemas/job/ImportCellsRequest.yaml" + example: + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv + properties: + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv + type: string + required: + - dataLink + type: object ImportCellsFromMultipartRequest: - $ref: "./schemas/job/ImportCellsFromMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + data: + type: string + format: binary + required: + - studyId + - data + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportMetadataRequest: - $ref: "./schemas/job/ImportMetadataRequest.yaml" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + templateId: GSF334953 + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + type: string + templateId: + example: GSF334953 + type: string + required: + - metadataLink + type: object ImportMetadataFromMultipartRequest: - $ref: "./schemas/job/ImportMetadataFromMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + templateId: + example: GSF334953 + type: string + metadata: + type: string + format: binary + required: + - studyId + - metadata + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportSignalRunRequest: - $ref: "./schemas/job/ImportSignalRunRequest.yaml" + description: import signal data request + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + templateId: GSF334953 + previousVersion: GSF334953 + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + type: string + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + type: string + templateId: + example: GSF334953 + type: string + previousVersion: + example: GSF334953 + type: string + required: + - dataLink + type: object ImportSignalRunFomMultipartRequest: - $ref: "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" + properties: + studyId: + type: string + example: GSF1234567 + description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. + metadata: + type: string + format: binary + data: + type: string + format: binary + templateId: + example: GSF334953 + type: string + previousVersion: + example: GSF334953 + type: string + required: + - studyId + - data + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" ImportExpressionSignalRunRequest: - $ref: "./schemas/job/ImportExpressionSignalRunRequest.yaml" + allOf: + - $ref: "#/components/schemas/ImportSignalRunRequest" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz + templateId: GSF334953 + previousVersion: GSF334953 + numberOfFeatureAttributes: 5 + dataClass: Proteomics + measurementSeparator: ':' + properties: + numberOfFeatureAttributes: + description: Integer value that specifies the number of columns related to the + feature in the uploaded data frame, and indicates the starting position of the + sample data. This attribute is not needed if the uploaded file is in GCT format. + example: 5 + type: integer + dataClass: + description: "A mandatory parameter with the following possible values: `Bulk + transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, + pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, + `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, + `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, + `Microbiome / Metagenomics`, `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, + `Document`, `Other`. \nIn case the parameter is not set + the dataClass is automatically defined as `Other`." + example: Proteomics + type: string + measurementSeparator: + description: 'This parameter is necessary when your file contains multiple measurement + columns for each sample, library, or preparation. It represents the character + that distinguishes the sample/library/preparation name from the measurement + name in column headers. Supported separators include `. , : ; _ - / \ |`, with + the allowance for multi-character separators.' + example: ':' + type: string + components: + schemas: + ImportSignalRunRequest: + $ref: "./ImportSignalRunRequest.yaml" ImportExpressionSignalRunFromMultipartRequest: - $ref: "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" + allOf: + - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" + properties: + numberOfFeatureAttributes: + description: Integer value that specifies the number of columns related to the + feature in the uploaded data frame, and indicates the starting position of the + sample data. This attribute is not needed if the uploaded file is in GCT format. + example: 5 + type: integer + dataClass: + description: "A mandatory parameter with the following possible values: `Bulk + transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, + pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, + `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, + `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body + fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, + `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics`, + `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, + `Document`, `Other`. \nIn case the parameter is not set + the dataClass is automatically defined as `Other`." + example: Proteomics + type: string + measurementSeparator: + description: 'This parameter is necessary when your file contains multiple measurement + columns for each sample, library, or preparation. It represents the character + that distinguishes the sample/library/preparation name from the measurement + name in column headers. Supported separators include `. , : ; _ - / \ |`, with + the allowance for multi-character separators.' + example: ':' + type: string + components: + schemas: + ImportSignalRunFomMultipartRequest: + $ref: "./ImportSignalRunFomMultipartRequest.yaml" ImportAFileRequest: - $ref: "./schemas/job/ImportAFileRequest.yaml" + example: + metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf + studyAccession: GSF334953 + dataClass: Proteomics + properties: + source: + enum: + - S3 + - HTTP + - LOCAL + example: HTTP + type: string + description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link + metadataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv + type: string + description: Specifies the URL of a metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. + dataLink: + example: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf + type: string + description: Specifies a link to a file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. + studyAccession: + example: GSF334953 + type: string + dataClass: + example: Proteomics + type: string + description: A mandatory parameter with the value from a limited set of values (see request description). + required: + - dataLink + - studyAccession + - dataClass + type: object ImportAFileFromMultipartRequest: - $ref: "./schemas/job/ImportAFileFromMultipartRequest.yaml" + properties: + metadata: + type: string + format: binary + description: The metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. + data: + type: string + format: binary + description: A file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. + studyAccession: + example: GSF334953 + type: string + description: An accession of a study the file will be associated with. + dataClass: + example: Proteomics + type: string + description: A mandatory parameter with the value from a limited set of values (see request description). + required: + - data + - studyAccession + - dataClass + type: object + allOf: + - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" + components: + schemas: + TransformationParametersForMultipartRequest: + $ref: "./TransformationParametersForMultipartRequest.yaml" Info: - $ref: "./schemas/job/Info.yaml" + description: job execution information + example: + jobName: Protein folding + startedBy: job@genestack.com + createTime: 2000-01-23T04:56:07+00:00 + jobExecId: 12345 + endTime: 2000-01-23T04:56:07+00:00 + status: STARTED + properties: + jobExecId: + description: job execution id + example: 12345 + format: int64 + type: integer + startedBy: + description: user name who started the job + example: job@genestack.com + type: string + jobName: + description: actual job name + example: Protein folding + type: string + status: + description: current job status + enum: + - COMPLETED + - STARTING + - RUNNING + - STOPPING + - STOPPED + - FAILED + - ABANDONED + - UNKNOWN + example: STARTED + type: string + createTime: + format: date-time + type: string + endTime: + format: date-time + type: string + required: + - createTime + - jobExecId + - jobName + - startedBy + - status + type: object JobRuntimeError: - $ref: "./schemas/job/JobRuntimeError.yaml" + example: + stack: + - type: type + message: message + - type: type + message: message + stage: stage + properties: + stage: + type: string + stack: + items: + $ref: "#/components/schemas/ExceptionTypeAndMessage" + type: array + type: object + components: + schemas: + ExceptionTypeAndMessage: + $ref: "./ExceptionTypeAndMessage.yaml" Output: - $ref: "./schemas/job/Output.yaml" + description: job execution output + example: + result: { } + errors: + - stack: + - type: type + message: message + - type: type + message: message + stage: stage + - stack: + - type: type + message: message + - type: type + message: message + stage: stage + status: COMPLETED + properties: + status: + description: current job status + enum: + - COMPLETED + - STARTING + - RUNNING + - STOPPING + - STOPPED + - FAILED + - ABANDONED + - UNKNOWN + example: COMPLETED + type: string + result: + description: job result object (available if job completed successfully) + properties: { } + type: object + errors: + description: array of errors occurred during execution of the job (available if + job failed) + items: + $ref: "#/components/schemas/JobRuntimeError" + type: array + required: + - status + type: object + components: + schemas: + JobRuntimeError: + $ref: "./JobRuntimeError.yaml" DetachedCollection: - $ref: "./schemas/manage-data/DetachedCollection.yaml" + example: + cursor: cursor + data: + - createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + - createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + properties: + data: + items: + $ref: "#/components/schemas/DetachedObject" + type: array + cursor: + type: string + required: + - data + type: object + components: + schemas: + DetachedObject: + $ref: "./DetachedObject.yaml" DetachedObject: - $ref: "./schemas/manage-data/DetachedObject.yaml" + example: + createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + detachedObjectType: SAMPLE_GROUP + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + detachedObjectType: + enum: + - STUDY + - SAMPLE_GROUP + - LIBRARY_GROUP + - PREPARATION_GROUP + - CELL_GROUP + - TABULAR_DATA + - GENE_VARIANT + - FLOW_CYTOMETRY + type: string + ownerEmail: + type: string + createdAt: + format: date-time + type: string + required: + - createdAt + - detachedObjectType + - genestack:accession + - ownerEmail + type: object ManagedObject: - $ref: "./schemas/manage-data/ManagedObject.yaml" + example: + createdAt: 2000-01-23T04:56:07+00:00 + genestack:accession: genestack:accession + objectType: objectType + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + objectType: + type: string + ownerEmail: + type: string + createdAt: + format: date-time + type: string + required: + - createdAt + - genestack:accession + - objectType + - ownerEmail + type: object XrefSetCreateRequest: - $ref: "./schemas/reference-data/XrefSetCreateRequest.yaml" + description: Create XrefSet request body + example: + metadata: + key: metadata + xrefSetType: gene-transcript + dataLink: '"http://example-url.com/my-mapping.tsv"' + properties: + xrefSetType: + description: Type of data stored in XrefSet + enum: + - gene-transcript + type: string + dataLink: + description: Mapping file link + example: '"http://example-url.com/my-mapping.tsv"' + type: string + metadata: + patternProperties: + "^.*$": + type: string + description: Additional user metadata + type: object + required: + - dataLink + - xrefSetType + type: object XrefSetCreateResponse: - $ref: "./schemas/reference-data/XrefSetCreateResponse.yaml" + description: Create XrefSet response body + example: + lastUpdated: 1602838500612 + metadata: + key: metadata + createdDate: 1602838500612 + createdBy: '"User007"' + warnings: + - warnings + - warnings + xrefSetType: gene-transcript + xrefSetId: '"GSF0000013"' + properties: + xrefSetId: + description: Accession of the created XrefSet + example: '"GSF0000013"' + type: string + createdBy: + description: Name of the user created XrefSet + example: '"User007"' + type: string + createdDate: + description: Date of XrefSet creation + example: 1602838500612 + format: int64 + type: integer + lastUpdated: + description: Date of XrefSet last update. For a new entity lastUpdated = createdDate + example: 1602838500612 + format: int64 + type: integer + xrefSetType: + description: Type of data stored in XrefSet + enum: + - gene-transcript + type: string + metadata: + patternProperties: + "^.*$": + type: string + description: Additional user metadata + type: object + warnings: + description: Warnings, if any + items: + type: string + type: array + required: + - createdBy + - createdDate + - lastUpdated + - metadata + - warnings + - xrefSetId + - xrefSetType + type: object XrefSetMetadata: - $ref: "./schemas/reference-data/XrefSetMetadata.yaml" + description: Xrefset metadata + example: + lastUpdated: 1594846270242 + createdDate: 1594846270242 + data: + key: data + createdBy: '"Genestack Superuser"' + xrefSetId: '"GSF000477"' + properties: + xrefSetId: + example: '"GSF000477"' + type: string + createdBy: + example: '"Genestack Superuser"' + type: string + createdDate: + example: 1594846270242 + format: int64 + type: integer + lastUpdated: + example: 1594846270242 + format: int64 + type: integer + data: + patternProperties: + "^.*$": + type: string + type: object + type: object XrefSetSearchResult: - $ref: "./schemas/reference-data/XrefSetSearchResult.yaml" + description: Result of a search query for xrefsets + example: + cursor: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' + result: + - sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + - sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + properties: + cursor: + example: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' + type: string + result: + items: + $ref: "XrefSetSearchResultEntry.yaml" + type: array + type: object XrefSetSearchResultEntry: - $ref: "./schemas/reference-data/XrefSetSearchResultEntry.yaml" + example: + sourceId: '"ENSG00000231103.2"' + targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' + xrefSetId: '"GSF0000013"' + properties: + xrefSetId: + example: '"GSF0000013"' + type: string + sourceId: + example: '"ENSG00000231103.2"' + type: string + targetIds: + example: '["ENST00000617423.4", "ENST00000334232.8"]' + items: + type: string + type: array + type: object UploadRGRequest: - $ref: "./schemas/reference-genome/UploadRGRequest.yaml" + example: + annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz + organism: Homo sapiens + assembly: GRCh38 + release: "112" + name: Homo sapiens reference genome GRCh38.112 + properties: + annotationUrl: + type: string + format: uri + organism: + type: string + assembly: + type: string + release: + type: string + name: + type: string + required: + - organism + - assembly + - release + type: object AccessionResponse: - $ref: "./schemas/common/AccessionResponse.yaml" + example: + genestack:accession: genestack:accession + properties: + genestack:accession: + type: string + required: + - genestack:accession + type: object RGItem: - $ref: "./schemas/reference-genome/RGItem.yaml" + example: + genestack:accession: GSF000009 + annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz + organism: Homo sapiens + assembly: GRCh38 + release: 112 + name: Homo sapiens reference genome GRCh38.112 + initializationStatus: Complete + createdAt: 2000-01-23T04:56:070Z + ownerEmail: ownerEmail + properties: + genestack:accession: + type: string + annotationUrl: + type: string + format: uri + organism: + type: string + assembly: + type: string + release: + type: string + name: + type: string + initializationStatus: + type: string + createdAt: + type: string + ownerEmail: + type: string + type: object Sample: - $ref: "./schemas/sample/Sample.yaml" + type: object Group: - $ref: "./schemas/scim/Group.yaml" + example: + displayName: displayName + schemas: + - urn:ietf:params:scim:schemas:core:2.0:Group + - urn:ietf:params:scim:schemas:core:2.0:Group + members: + - display: display + value: value + - display: display + value: value + externalId: externalId + id: id + properties: + externalId: + description: External unique resource id + type: string + id: + description: Unique resource id + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:schemas:core:2.0:Group + type: string + type: array + members: + items: + $ref: "#/components/schemas/Member" + type: array + displayName: + type: string + required: + - displayName + type: object + components: + schemas: + Member: + $ref: "./Member.yaml" Member: - $ref: "./schemas/scim/Member.yaml" + example: + display: display + value: value + properties: + value: + type: string + display: + type: string + $ref: + description: The URI of the member resource + format: uri + type: string + required: + - $ref + - value + type: object GroupPatch: - $ref: "./schemas/scim/GroupPatch.yaml" + example: + schemas: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + - urn:ietf:params:scim:api:messages:2.0:PatchOp + Operations: + - op: add + path: path + value: { } + - op: add + path: path + value: { } + properties: + Operations: + description: Patch operations list + items: + $ref: "#/components/schemas/PatchOperation" + type: array + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + type: string + type: array + required: + - Operations + - schemas + type: object + components: + schemas: + PatchOperation: + $ref: "./PatchOperation.yaml" PatchOperation: - $ref: "./schemas/scim/PatchOperation.yaml" + example: + op: add + path: path + value: { } + properties: + op: + enum: + - add + - replace + - remove + type: string + path: + type: string + value: + description: Corresponding 'value' of that field specified by 'path' + properties: { } + type: object + required: + - op + type: object FilterGroupsResponse: - $ref: "./schemas/scim/FilterGroupsResponse.yaml" + properties: + Resources: + description: List of groups + items: + $ref: "#/components/schemas/GroupResponse" + type: array + itemsPerPage: + format: int64 + type: integer + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:ListResponse + type: string + type: array + startIndex: + format: int64 + type: integer + totalResults: + format: int64 + type: integer + type: object + components: + schemas: + GroupResponse: + $ref: "./GroupResponse.yaml" GroupResponse: - $ref: "./schemas/scim/GroupResponse.yaml" + allOf: + - $ref: "#/components/schemas/Group" + - properties: + meta: + $ref: "#/components/schemas/Meta" + type: object + components: + schemas: + Group: + $ref: "./Group.yaml" + Meta: + $ref: "./Meta.yaml" Meta: - $ref: "./schemas/scim/Meta.yaml" + description: resource metadata + properties: + created: + format: date-time + type: string + lastModified: + format: date-time + type: string + resourceType: + enum: + - User + - Group + type: string + type: object SCIMErrorResponse: - $ref: "./schemas/scim/SCIMErrorResponse.yaml" + properties: + detail: + description: Detailed error message + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:Error + type: string + type: array + scimType: + description: Bad request type when status code is 400 + enum: + - uniqueness + - tooMany + - mutability + - sensitive + - invalidSyntax + - invalidFilter + - invalidPath + - invalidValue + - invalidVers + - noTarget + type: string + status: + description: Same as HTTP status code, e.g. 400, 403, etc. + type: string + required: + - status + type: object + BaseErrorResponse: - $ref: "./schemas/scim/BaseErrorResponse.yaml" + properties: + error: + $ref: "#/components/schemas/ErrorMessage" + required: + - error + type: object + components: + schemas: + ErrorMessage: + $ref: "./ErrorMessage.yaml" + ErrorMessage: - $ref: "./schemas/scim/ErrorMessage.yaml" + properties: + message: + description: Detailed error message + type: string + required: + - message + type: object + User: - $ref: "./schemas/scim/User.yaml" + example: + emails: + - type: work + value: value + primary: true + - type: work + value: value + primary: true + displayName: displayName + schemas: + - urn:ietf:params:scim:schemas:core:2.0:User + - urn:ietf:params:scim:schemas:core:2.0:User + active: true + externalId: externalId + id: id + userName: userName + properties: + active: + description: User status + type: boolean + emails: + items: + $ref: "#/components/schemas/Email" + type: array + externalId: + description: External unique resource id + type: string + id: + description: Unique resource id + type: string + schemas: + items: + enum: + - urn:ietf:params:scim:schemas:core:2.0:User + type: string + type: array + userName: + type: string + displayName: + type: string + required: + - active + - displayName + - emails + type: object + components: + schemas: + Email: + $ref: "./Email.yaml" + Email: - $ref: "./schemas/scim/Email.yaml" + example: + type: work + value: value + primary: true + properties: + type: + enum: + - work + type: string + value: + type: string + primary: + type: boolean + type: object + UserPatch: - $ref: "./schemas/scim/UserPatch.yaml" + example: + schemas: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + - urn:ietf:params:scim:api:messages:2.0:PatchOp + Operations: + - op: add + path: path + value: { } + - op: add + path: path + value: { } + properties: + Operations: + description: Patch operations list + items: + $ref: "#/components/schemas/PatchOperation" + type: array + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:PatchOp + type: string + type: array + required: + - Operations + - schemas + type: object + components: + schemas: + PatchOperation: + $ref: "./PatchOperation.yaml" + FilterUsersResponse: - $ref: "./schemas/scim/FilterUsersResponse.yaml" + properties: + Resources: + description: List of users + items: + $ref: "#/components/schemas/UserResponse" + type: array + itemsPerPage: + format: int64 + type: integer + schemas: + items: + enum: + - urn:ietf:params:scim:api:messages:2.0:ListResponse + type: string + type: array + startIndex: + format: int64 + type: integer + totalResults: + format: int64 + type: integer + type: object + components: + schemas: + UserResponse: + $ref: "./UserResponse.yaml" + UserResponse: - $ref: "./schemas/scim/UserResponse.yaml" + allOf: + - $ref: "#/components/schemas/User" + - properties: + meta: + $ref: "#/components/schemas/Meta" + type: object + components: + schemas: + User: + $ref: "./User.yaml" + Meta: + $ref: "./Meta.yaml" + VariantMetadataWithId: - $ref: "./schemas/variant/VariantMetadataWithId.yaml" + example: + itemId: itemId + metadata: { } + annotation: { } + properties: + itemId: + readOnly: true + type: string + metadata: + type: object + annotation: + type: object + referenceGenome: + type: object + type: object + VariantItem: - $ref: "./schemas/variant/VariantItem.yaml" + example: + ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: A + alt: + - GC + - GAATTTA + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + properties: + itemId: + type: string + itemOrigin: + type: object + properties: + runSourceId: + type: string + runId: + type: string + groupId: + type: string + metadata: + type: object + variant: + type: object + properties: + chrom: + type: string + pos: + format: int64 + type: integer + id: + type: array + items: + type: string + ref: + type: string + alt: + type: array + items: + type: string + qual: + type: number + filter: + type: array + items: + type: string + info: + type: object + patternProperties: + "^.*$": + type: array + items: + oneOf: + - type: string + - type: number + genotype: + type: object + patternProperties: + "^.*$": + type: string + type: object + VariantResponse: - $ref: "./schemas/variant/VariantResponse.yaml" + example: + cursor: cursor + data: + - ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: reference + alt: + - alteration + - alteration + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + - ref: reference + itemId: itemId + itemOrigin: + runSourceId: runSourceId, + runId: runId, + groupId: groupId + metadata: { } + id: + - variationId + - variationId + variant: + chrom: chromosome + pos: 0 + id: + - id + ref: reference + alt: + - alteration + - alteration + qual: 10 + filter: + - PASS + info: + key: + - info + - info + genotype: + key: genotype + properties: + data: + items: + $ref: "#/components/schemas/VariantItem" + type: array + cursor: + type: string + type: object + components: + schemas: + VariantItem: + $ref: "VariantItem.yaml" securitySchemes: Access-token: in: "header" diff --git a/openapi/v1/odmApi.json b/openapi/v1/odmApi.json deleted file mode 100644 index ef5ec235..00000000 --- a/openapi/v1/odmApi.json +++ /dev/null @@ -1,21233 +0,0 @@ -{ - "openapi" : "3.1.0", - "info" : { - "description" : "This swagger page describes the variantUser API endpoints for ODM. These are typically used to find and retrieve variant data and metadata.\n\nBefore carrying out any API calls you will need an API token. API tokens can be obtained under your profile within the Genestack software.\n\nTo try out calls in this swagger page:\n\n1. Click the 'Authorize' button below to enter your API token\n2. Scroll to the 'Parameters' section for the method you wish to try out and click the 'Try it out' button\n3. Enter parameter values that you wish to try\n4. Scroll to the bottom of the Parameters section and click the 'Execute' bar that appears\n\n\n The server response will be in the section that follows.", - "title" : "ODM API", - "version" : "default-released" - }, - "tags" : [ { - "name" : "Cells as Curator" - }, { - "name" : "Cells as User" - }, { - "name" : "Expression SPoT as Curator" - }, { - "name" : "Expression SPoT as User" - }, { - "name" : "Files as Curator" - }, { - "name" : "Files as User" - }, { - "name" : "Flow Cytometry SPoT as Curator" - }, { - "name" : "Flow Cytometry SPoT as User" - }, { - "name" : "Cell integration as Curator" - }, { - "name" : "Expression integration as Curator" - }, { - "name" : "Files integration as Curator" - }, { - "name" : "Flow Cytometry (FACS) integration as Curator" - }, { - "name" : "Library integration as Curator" - }, { - "name" : "Linkage as Curator" - }, { - "name" : "Metadata versioning as Curator" - }, { - "name" : "Omics queries as Curator" - }, { - "name" : "Preparation integration as Curator" - }, { - "name" : "Sample integration as Curator" - }, { - "name" : "Study integration as Curator" - }, { - "name" : "Validation summary as Curator" - }, { - "name" : "Variant integration as Curator" - }, { - "name" : "Expression integration as User" - }, { - "name" : "Files integration as User" - }, { - "name" : "Flow Cytometry (FACS) integration as User" - }, { - "name" : "Library integration as User" - }, { - "name" : "Linkage as User" - }, { - "name" : "Omics queries as User" - }, { - "name" : "Preparation integration as User" - }, { - "name" : "Sample integration as User" - }, { - "name" : "Study integration as User" - }, { - "name" : "Variant integration as User" - }, { - "name" : "Data import jobs" - }, { - "name" : "Data import via direct file upload" - }, { - "name" : "Job operations" - }, { - "name" : "Library SPoT as Curator" - }, { - "name" : "Library SPoT as User" - }, { - "name" : "Manage Data" - }, { - "name" : "Preparation SPoT as Curator" - }, { - "name" : "Preparation SPoT as User" - }, { - "name" : "Xrefset queries" - }, { - "name" : "Reference genome" - }, { - "name" : "Sample SPoT as Curator" - }, { - "name" : "Sample SPoT as User" - }, { - "name" : "Groups" - }, { - "name" : "Users" - }, { - "name" : "Study SPoT as Curator" - }, { - "name" : "Study SPoT as User" - }, { - "name" : "Tasks API" - }, { - "name" : "Variant SPoT as Curator" - }, { - "name" : "Variant SPoT as User" - } ], - "paths" : { - "/api/v1/as-curator/cells/{id}" : { - "get" : { - "operationId" : "getCellByIdAsCurator", - "parameters" : [ { - "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Cell" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided ID could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a cell by ID", - "tags" : [ "Cells as Curator" ] - } - }, - "/api/v1/as-curator/cells/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", - "operationId" : "getCellsByGroupAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the cell group.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CellListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Cell data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cells from a given group", - "tags" : [ "Cells as Curator" ] - } - }, - "/api/v1/as-user/cells/{id}" : { - "get" : { - "operationId" : "getCellByIdAsUser", - "parameters" : [ { - "description" : "Unique cell identifier. Consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Cell" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided ID could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a cell by ID", - "tags" : [ "Cells as User" ] - } - }, - "/api/v1/as-user/cells/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag.\nTo retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page.\nIf there are no more results you will just retrieve an empty result.\n", - "operationId" : "getCellsByGroupAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the cell group.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 10000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see Paging above). Cell ID is currently used as a cursor.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CellListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Cell data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cells from a given group", - "tags" : [ "Cells as User" ] - } - }, - "/api/v1/as-curator/expressions" : { - "get" : { - "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getExpressionDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minExpressionLevel", - "schema" : { - "format" : "double", - "type" : "number" - } - }, { - "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionResponse" - } - } - }, - "description" : "Retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Expression data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple expression data and metadata objects", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchExpressionGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group/by/run/{id}" : { - "get" : { - "operationId" : "getExpressionGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/group/{id}" : { - "get" : { - "operationId" : "getExpressionGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression group by ID (groupId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchExpressionRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/{id}" : { - "get" : { - "operationId" : "getExpressionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by ID (itemId)", - "tags" : [ "Expression SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateExpressionRunAsCurator", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update metadata object by expression object run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/expressions/{id}/versions" : { - "get" : { - "operationId" : "getExpressionVersionsAsCurator", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of expression object versions by run ID (runId)", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-curator/expressions/{id}/versions/{version}" : { - "get" : { - "operationId" : "getExpressionByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the expression object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by run ID and its version", - "tags" : [ "Expression SPoT as Curator" ] - } - }, - "/api/v1/as-user/expressions" : { - "get" : { - "description" : "Retrieve all expression data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getExpressionDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to the column and is used to link data from the same run to a sample, library or preparation. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample, library or preparation is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minExpressionLevel", - "schema" : { - "format" : "double", - "type" : "number" - } - }, { - "description" : "List of features to return. These features must match exactly the probe IDs in the GCT file. Example: `1552269_at`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionResponse" - } - } - }, - "description" : "Retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Expression data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple expression data and metadata objects", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchExpressionGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Normalization Method\"=TPM`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for expression objects via a full text query over all expression metadata. E.g. `TPM`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group/by/run/{id}" : { - "get" : { - "operationId" : "getExpressionGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/group/{id}" : { - "get" : { - "operationId" : "getExpressionGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression group by ID (groupId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchExpressionRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}" : { - "get" : { - "operationId" : "getExpressionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExpressionItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by ID (itemId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}/versions" : { - "get" : { - "operationId" : "getExpressionVersionsAsUser", - "parameters" : [ { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of expression object versions by run ID (runId)", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-user/expressions/{id}/versions/{version}" : { - "get" : { - "operationId" : "getExpressionByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Expression object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single expression object by run ID and its version", - "tags" : [ "Expression SPoT as User" ] - } - }, - "/api/v1/as-curator/files/{id}/download" : { - "head" : { - "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", - "operationId" : "headFileAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "File exists. Additional metadata is provided in the response headers." - }, - "400" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "tags" : [ "Files as Curator" ] - }, - "get" : { - "description" : "Download a file by its accession.\n", - "operationId" : "getFileAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "name" : "Range", - "in" : "header", - "required" : false, - "schema" : { - "type" : "string", - "example" : "bytes=0-" - }, - "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" - } ], - "responses" : { - "200" : { - "description" : "File downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "206" : { - "description" : "Partial content downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "File cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a file by ID (accession)", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-curator/files/{id}" : { - "get" : { - "operationId" : "getFileMetadataByIdAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AFile" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by ID (accession)", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-curator/files" : { - "get" : { - "operationId" : "getFilesMetadataAsCurator", - "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", - "parameters" : [ { - "in" : "query", - "name" : "filter", - "description" : "Filter by files metadata (key-value metadata pair(s)).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for files via a full-text query over all file metadata.", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "includeContents", - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by its fields", - "tags" : [ "Files as Curator" ] - } - }, - "/api/v1/as-user/files/{id}/download" : { - "head" : { - "description" : "Check if a file exists by its accession.\n\nThis endpoint can be used to check if a file exists and accessible before downloading it.\n", - "operationId" : "headFileAsUser", - "summary" : "Check if a file exists by ID (accession).", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "File exists. Additional metadata is provided in the response headers." - }, - "400" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "tags" : [ "Files as User" ] - }, - "get" : { - "description" : "Download a file by its accession.\n", - "operationId" : "getFileAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "name" : "Range", - "in" : "header", - "required" : false, - "schema" : { - "type" : "string", - "example" : "bytes=0-" - }, - "description" : "Request a specific range of bytes to support partial downloads.\nExample: `bytes=0-1024` to download the first 1024 bytes. Supplying several\nranges is not supported.\n" - } ], - "responses" : { - "200" : { - "description" : "File downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "206" : { - "description" : "Partial content downloaded successfully", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "string", - "format" : "binary" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "File cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "406" : { - "content" : { }, - "description" : "File cannot be downloaded." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a file by ID (accession)", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-user/files/{id}" : { - "get" : { - "operationId" : "getFileMetadataByIdAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AFile" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by ID (accession)", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-user/files" : { - "get" : { - "operationId" : "getFilesMetadataAsUser", - "description" : "## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all files metadata objects.", - "parameters" : [ { - "in" : "query", - "name" : "filter", - "description" : "Filter by files metadata (key-value metadata pair(s)).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for files via a full-text query over all file metadata.", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "includeContents", - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by its fields", - "tags" : [ "Files as User" ] - } - }, - "/api/v1/as-curator/flow-cytometries" : { - "get" : { - "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getFlowCytometryDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", - "in" : "query", - "name" : "readoutType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", - "in" : "query", - "name" : "population", - "schema" : { - "type" : "string" - } - }, { - "description" : "Marker value. E.g.: `PD1`, `BV786`", - "in" : "query", - "name" : "marker", - "schema" : { - "type" : "string" - } - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minValue", - "schema" : { - "type" : "number" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryResponse" - } - } - }, - "description" : "Retrieved Flow Cytometry data." - }, - "400" : { - "content" : { }, - "description" : "Flow Cytometry data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple flow cytometry data and metadata objects", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchFlowCytometryGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group/by/run/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/group/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchFlowCytometryRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/{id}" : { - "get" : { - "operationId" : "getFlowCytometryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateFlowCytometryAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update object metadata", - "tags" : [ "Flow Cytometry SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/flow-cytometries/{id}/versions" : { - "get" : { - "operationId" : "getFlowCytometryVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-curator/flow-cytometries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getFlowCytometryByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as Curator" ] - } - }, - "/api/v1/as-user/flow-cytometries" : { - "get" : { - "description" : "Retrieve all flow cytometry data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getFlowCytometryDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Autogenerated numeric ID that identifies a set of rows related to one run and is used to link data from the run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Sample name from the file which allows retrieval of all the rows related to the sample. Multiple values can be provided as a list.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Required value of \"Readout type\" column. E.g.: `Count`, `Median`", - "in" : "query", - "name" : "readoutType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Value of \"Cell Population\" column. E.g.: `\"total cells\"`, `CD45+,live/CD45+`, `CD3+`.\n\nNote that if this value contains special characters like `/` which is used as a URI path separator, such characters should be escaped manually before sending request. For example, `/` should be escaped as `%2F`.", - "in" : "query", - "name" : "population", - "schema" : { - "type" : "string" - } - }, { - "description" : "Marker value. E.g.: `PD1`, `BV786`", - "in" : "query", - "name" : "marker", - "schema" : { - "type" : "string" - } - }, { - "description" : "Minimum threshold (inclusive) for returned expression values.", - "in" : "query", - "name" : "minValue", - "schema" : { - "type" : "number" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryResponse" - } - } - }, - "description" : "Retrieved Flow Cytometry data." - }, - "400" : { - "content" : { }, - "description" : "Flow Cytometry data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple flow cytometry data and metadata objects", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchFlowCytometryGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for flow cytometry objects via a full text query over all flow cytometry metadata. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group/by/run/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/group/{id}" : { - "get" : { - "operationId" : "getFlowCytometryGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchFlowCytometryRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}" : { - "get" : { - "operationId" : "getFlowCytometryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FlowCytometryItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}/versions" : { - "get" : { - "operationId" : "getFlowCytometryVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-user/flow-cytometries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getFlowCytometryByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample flow cytometry by ID (accession)", - "tags" : [ "Flow Cytometry SPoT as User" ] - } - }, - "/api/v1/as-curator/data-types" : { - "get" : { - "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", - "operationId" : "getDataTypesAsCurator", - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Lists all available data types.", - "tags" : [ "Linkage as Curator" ] - } - }, - "/api/v1/as-curator/data-types/links" : { - "get" : { - "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", - "operationId" : "getDataTypesLinksAsCurator", - "parameters" : [ { - "description" : "Return only links with the specified data type.", - "in" : "query", - "name" : "type", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/SourceTypePair" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List all possible links between data types that match the specified criteria.", - "tags" : [ "Linkage as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/library/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByLibraryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related library ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/preparation/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByPreparation", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getExpressionGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/cell/group/{targetId}" : { - "post" : { - "description" : "Create a link between a group of cell expression objects and a group of cell metadata.\n\nA cell expression object can be linked to one cell metadata object only.", - "operationId" : "createExpressionGroupCellGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell expression group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the cell metadata group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) cell links were created." - }, - "204" : { - "content" : { }, - "description" : "All links were created." - }, - "400" : { - "content" : { }, - "description" : "Incorrect Cell or Expression group provided, see error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of cell expression objects and a group of cell metadata.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/library/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of library objects", - "operationId" : "deleteExpressionGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of library objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of library objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) sample links created." - }, - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Library group, signal group or libraries to link not found" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of library objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/preparation/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of preparation objects", - "operationId" : "deleteExpressionGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of preparation objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of preparation objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Some (not all) sample links created." - }, - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Preparation group, signal group or preparations to link not found" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of preparation objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of expression objects and a group of sample objects", - "operationId" : "deleteExpressionGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of expression objects and a group of sample objects", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of expression objects and a group of sample objects.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createExpressionGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to a GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "400" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of expression objects and a group of sample objects", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-libraries/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToLibraryPairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-preparations/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToPreparationPairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/library/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a library", - "operationId" : "deleteExpressionLibraryLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a library", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a library.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionLibraryLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a library", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/preparation/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a preparation", - "operationId" : "deleteExpressionPreparationLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a preparation", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a preparation.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionPreparationLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a preparation", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/expression/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between an expression object and a sample", - "operationId" : "deleteExpressionSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between an expression object and a sample", - "tags" : [ "Expression integration as Curator" ] - }, - "post" : { - "description" : "Create a link between an expression object and a sample.\n\nAn expression object can be linked to one object only. If an expression object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nExpression objects of the same group can only be linked to objects of the same study.", - "operationId" : "createExpressionSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between an expression object and a sample", - "tags" : [ "Expression integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getFlowCytometryGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of flow-cytometry objects and a group of sample objects", - "operationId" : "deleteFlowCytometryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of flow-cytometry objects and a group of sample objects", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of flow-cytometry objects and a group of sample objects.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.\n\nUsers can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createFlowCytometryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a FACS file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of flow-cytometry objects and a group of sample objects", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/flow-cytometry/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between a flow-cytometry object and a sample", - "operationId" : "deleteFlowCytometrySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level data block", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a flow-cytometry object and a sample", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a flow-cytometry object and a sample.\n\nA flow-cytometry object can be linked to one object only. If a flow-cytometry object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nFlow-cytometry objects of the same group can only be linked to objects of the same study.", - "operationId" : "createFlowCytometrySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level data block", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a flow-cytometry object and a sample", - "tags" : [ "Flow Cytometry (FACS) integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/libraries/by/samples" : { - "get" : { - "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibrariesBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related samples", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/by/sample/{id}" : { - "get" : { - "operationId" : "getLibraryBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related sample ID (accession)", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/group/by/study/{id}" : { - "get" : { - "operationId" : "getLibraryGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete links between samples and libraries related to the specified group", - "operationId" : "deleteLibraryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete links between samples and libraries related to the specified group", - "tags" : [ "Library integration as Curator" ] - }, - "post" : { - "description" : "Create links between samples and libraries.\n\nLibrary objects of the same group can only be linked to objects of the same study.", - "operationId" : "createLibraryGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between samples and libraries", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/libraries-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibraryLinksToSamplesAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/library/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete a link between a library and a sample", - "operationId" : "deleteLibrarySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a link between a library and a sample", - "tags" : [ "Library integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a library and a sample.\n\nLibrary objects of the same group can only be linked to objects of the same study.", - "operationId" : "createLibrarySampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the library object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a library and a sample", - "tags" : [ "Library integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/by/sample/{id}" : { - "get" : { - "operationId" : "getPreparationBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/group/by/study/{id}" : { - "get" : { - "operationId" : "getPreparationGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete links between samples and preparations related to the specified group", - "operationId" : "deletePreparationGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete links between samples and preparations related to the specified group", - "tags" : [ "Preparation integration as Curator" ] - }, - "post" : { - "description" : "Create links between samples and preparations.\n\nPreparation objects of the same group can only be linked to objects of the same study.", - "operationId" : "createPreparationGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between samples and preparations", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/preparations-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationLinksToSamplesAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparation/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete a link between a preparation and a sample", - "operationId" : "deletePreparationSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a link between a preparation and a sample", - "tags" : [ "Preparation integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a preparation and a sample.\n\nPreparation objects of the same group can only be linked to objects of the same study.", - "operationId" : "createPreparationSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the preparation object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a preparation and a sample", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/preparations/by/samples" : { - "get" : { - "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationsBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related samples", - "tags" : [ "Preparation integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/sample/group/{sourceId}/to/study/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of sample objects and a study", - "operationId" : "deleteSampleGroupStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of sample objects and a study", - "tags" : [ "Sample integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of sample objects and a study.\n\nSample objects of the same group can only be linked to the same study.", - "operationId" : "createSampleGroupStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of sample objects and a study", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/sample/{sourceId}/to/study/{targetId}" : { - "delete" : { - "description" : "Delete link between a sample and a study", - "operationId" : "deleteSampleStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a sample and a study", - "tags" : [ "Sample integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a sample and a study.\n\nSample objects of the same group can only be linked to the same study.", - "operationId" : "createSampleStudyLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the study object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a sample and a study", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/libraries" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related libraries", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/preparations" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related preparations", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/samples/by/study/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related study ID (accession)", - "tags" : [ "Sample integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/libraries" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related libraries", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/preparations" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related preparations", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/samples" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesBySamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related samples", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/study/by/sample/{id}" : { - "get" : { - "operationId" : "getStudyBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying sample ID (accession)", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/studies/by/files" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByFilesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related attachment files", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/study/by/file/{id}" : { - "get" : { - "operationId" : "getStudyByFileAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying attachment file ID (accession)", - "tags" : [ "Study integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantBySampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getVariantGroupsByStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/group/{sourceId}/to/sample/group/{targetId}" : { - "delete" : { - "description" : "Delete link between a group of variant objects and a group of sample objects", - "operationId" : "deleteVariantGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a group of variant objects and a group of sample objects", - "tags" : [ "Variant integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a group of variant objects and a group of sample objects.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.\n\n Users can specify a custom metadata field for linking omics data to samples via the “linkingAttribute” parameter, if not specified the “Sample Source ID“ sample metadata attribute will be used by default.", - "operationId" : "createVariantGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the group of run-level objects (corresponding to the column in a VCF file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Metadata field containing sample IDs to link omics data to samples. The template applied to the study must contain this field in the sample section.", - "in" : "query", - "name" : "linkingAttribute", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Not all signal data were linked to the samples." - }, - "204" : { - "content" : { }, - "description" : "All signal data were linked to the samples from the specified sample group." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Sample group, signal group or samples to the link were not found, or the specified linking attribute was not found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a group of variant objects and a group of sample objects", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantRunToSamplePairsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/variant/{sourceId}/to/sample/{targetId}" : { - "delete" : { - "description" : "Delete link between a variant object and a sample", - "operationId" : "deleteVariantSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link deleted." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be deleted." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete link between a variant object and a sample", - "tags" : [ "Variant integration as Curator" ] - }, - "post" : { - "description" : "Create a link between a variant object and a sample.\n\nA variant object can be linked to one object only. If a variant object is already linked to another object, this link will be deleted and a new link with the specified object will be created.\nVariant objects of the same group can only be linked to objects of the same study.", - "operationId" : "createVariantSampleLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the run-level object (corresponding to the column in a VCG/GCT file)", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link created." - }, - "400" : { - "content" : { }, - "description" : "Link cannot be created." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create a link between a variant object and a sample", - "tags" : [ "Variant integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/fulltext/search/studies" : { - "post" : { - "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", - "operationId" : "searchStudiesByFilterAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SearchStudyRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FindObjectsResponse" - } - } - }, - "description" : "The request was successful. Retrieved studies and filters." - }, - "400" : { - "content" : { }, - "description" : "Invalid request body" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Find and retrieve studies by full-text or facet query", - "tags" : [ "Study integration as Curator" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-curator/links" : { - "delete" : { - "description" : "This method should be used in case you want to delete the links of an object. Please, keep in mind that deleting a link between Study and Sample will not delete a link between corresponding Sample and it’s signal.", - "operationId" : "deleteLinkAsCurator", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Link has been successfully deleted." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No links were found." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Deletes existing links matching the specified criteria.", - "tags" : [ "Linkage as Curator" ] - }, - "get" : { - "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", - "operationId" : "getLinksByParamsAsCurator", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Param says to skip that many links before beginning to return links.", - "in" : "query", - "name" : "offset", - "schema" : { - "default" : 0, - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Param says to limit the count of returned links.", - "in" : "query", - "name" : "limit", - "schema" : { - "default" : 1000, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links matching the specified criteria.", - "tags" : [ "Linkage as Curator" ] - }, - "post" : { - "description" : "This method should be used only in case you need to create links between 2 objects. Links are created both ways (e.g. when linking Object A to Object B it can be done both ways, by linking firstType to secondType and vice versa).", - "operationId" : "saveLinksAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Link" - }, - "type" : "array" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { }, - "description" : "Links were updated or not modified." - }, - "201" : { - "content" : { }, - "description" : "At least one new link has been created.Some other links might have been updated or not modified." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "409" : { - "content" : { }, - "description" : "Link cannot be created due to conflict with existing link" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Creates new links between objects.", - "tags" : [ "Linkage as Curator" ], - "x-codegen-request-body-name" : "links" - } - }, - "/api/v1/as-curator/links/get-batch" : { - "post" : { - "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", - "operationId" : "getLinksByIdsAsCurator", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/BatchOfIds" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", - "tags" : [ "Linkage as Curator" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-curator/omics/cells" : { - "get" : { - "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsAsCurator", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve Cell objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/cells/expression/data" : { - "get" : { - "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsExpressionDataAsCurator", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cell expression objects by searching across multiple metadata types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/data" : { - "get" : { - "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/expression/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedExpressionDataAsCurator", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Accession of the expression group object (GCT)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", - "in" : "query", - "name" : "roundDigits", - "schema" : { - "default" : 4, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/csv" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given tabular file", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/flow-cytometry/data" : { - "get" : { - "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/flow-cytometry/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchSamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/data" : { - "get" : { - "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantDataAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant data objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique identifier (accession) of Reference Genome object.", - "in" : "query", - "name" : "referenceGenomeId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/variant/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedVariantDataAsCurator", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Accession of the variant group object (VCF)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Variant data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given VCF file", - "tags" : [ "Omics queries as Curator" ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/cell-ratio" : { - "post" : { - "operationId" : "cellRatioAsCurator", - "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRResponse" - } - } - }, - "description" : "Cell ratio result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/differential-expression" : { - "post" : { - "operationId" : "differentialExpressionAsCurator", - "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DERequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DEResponse" - } - } - }, - "description" : "Differential expression result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/omics/cells/analytics/gene-summary" : { - "post" : { - "operationId" : "geneSummaryAsCurator", - "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as Curator" ], - "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "required" : true, - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSRequest" - } - } - } - }, - "responses" : { - "200" : { - "description" : "Gene summary result", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSResponse" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/integration/studies/{id}/tasks/publish-versions" : { - "post" : { - "description" : "This endpoint publishes information from drafts and creates new metadata versions for the specified study and all associated objects. The version name is set to “Auto-published by API call”. Only curators with access to the specified studies can use this method.", - "operationId" : "publishStudyByAccessionAsCurator", - "parameters" : [ { - "description" : "Supply the accession of the study to be published", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", - "in" : "query", - "name" : "versionMessage", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Forbidden" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Asynchronous task that publishes all pending versions for a single study.", - "tags" : [ "Metadata versioning as Curator" ] - } - }, - "/api/v1/as-curator/integration/studies/{id}/validation-summary" : { - "get" : { - "operationId" : "getStudyValidationSummary", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/StudyValidationSummary" - } - } - }, - "description" : "Study validation result." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve validation summary by querying study ID (accession)", - "tags" : [ "Validation summary as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/files/by/study/{id}" : { - "get" : { - "operationId" : "getFilesByStudyAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by study ID", - "tags" : [ "Files integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/sample/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and samples.\n\nCell objects of the same group can be linked to sample objects from multiple sample groups, but only within the same study.", - "operationId" : "createCellGroupSampleGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the sample group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to samples." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to samples." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or samples to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and samples", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/library/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and libraries.\n\nCell objects of the same group can be linked to library objects from multiple library groups, but only within the same study.", - "operationId" : "createCellGroupLibraryGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the library group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to libraries." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to libraries." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or libraries to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and libraries", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-curator/integration/link/cell/group/{sourceId}/to/preparation/group/{targetId}" : { - "post" : { - "description" : "Create links between cells and preparations.\n\nCell objects of the same group can be linked to preparation objects from multiple preparation groups, but only within the same study.", - "operationId" : "createCellGroupPreparationGroupLinkAsCurator", - "parameters" : [ { - "description" : "The ID (accession) of the cell group object", - "in" : "path", - "name" : "sourceId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The ID (accession) of the preparation group object", - "in" : "path", - "name" : "targetId", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { }, - "description" : "Cell objects have been partially linked to preparations." - }, - "204" : { - "content" : { }, - "description" : "Cell objects have been fully linked to preparations." - }, - "400" : { - "content" : { }, - "description" : "Sample group, cell group or preparations to the link were not found." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\nor Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Create links between cells and preparations", - "tags" : [ "Cell integration as Curator" ] - } - }, - "/api/v1/as-user/data-types" : { - "get" : { - "description" : "This endpoint is for instructional uses and can be used to get the latest list of Data Types.", - "operationId" : "getDataTypesAsUser", - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Lists all available data types.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/data-types/links" : { - "get" : { - "description" : "This endpoint should be used for instructional needs, and can be used in order to get the links between the Data Types.", - "operationId" : "getDataTypesLinksAsUser", - "parameters" : [ { - "description" : "Return only links with the specified data type.", - "in" : "query", - "name" : "type", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/SourceTypePair" - }, - "type" : "array", - "uniqueItems" : true - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List all possible links between data types that match the specified criteria.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/library/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByLibraryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related library ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/preparation/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionByPreparationAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related preparation ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve expression run-level data by querying related sample ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getExpressionGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-libraries/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToLibraryPairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-library pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-preparations/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToPreparationPairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-preparation pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/expression/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getExpressionRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Expression integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry run-level data by querying related sample ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getFlowCytometryGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/flow-cytometry/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getFlowCytometryRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Flow Cytometry (FACS) integration as User" ] - } - }, - "/api/v1/as-user/integration/link/libraries/by/samples" : { - "get" : { - "description" : "Retrieve library metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibrariesBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related samples", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/by/sample/{id}" : { - "get" : { - "operationId" : "getLibraryBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Library" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library metadata by querying related sample ID (accession)", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/group/by/study/{id}" : { - "get" : { - "operationId" : "getLibraryGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/library/libraries-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getLibraryLinksToSamplesAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve library-samples pairs by group id. Pagination is based on unique libraries, not unique pairs.", - "tags" : [ "Library integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/by/sample/{id}" : { - "get" : { - "operationId" : "getPreparationBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/Preparation" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related sample ID (accession)", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/group/by/study/{id}" : { - "get" : { - "operationId" : "getPreparationGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparation/preparations-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationLinksToSamplesAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique preparations, not unique pairs.", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/preparations/by/samples" : { - "get" : { - "description" : "Retrieve preparation metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getPreparationsBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparation metadata by querying related samples", - "tags" : [ "Preparation integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/libraries" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related libraries", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/preparations" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related preparations", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/samples/by/study/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getSamplesByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata by querying related study ID (accession)", - "tags" : [ "Sample integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/libraries" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked library metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related libraries", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/preparations" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked preparation metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related preparations", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/samples" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked sample metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesBySamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all sample metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related samples", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/study/by/sample/{id}" : { - "get" : { - "operationId" : "getStudyBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying sample ID (accession)", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/studies/by/files" : { - "get" : { - "description" : "Retrieve study metadata objects whose linked attached files metadata matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Attachment files (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getStudiesByFilesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by attachment file metadata (key-value metadata pair(s)). E.g. \"Species or strain\"=\"Homo sapiens\"", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study metadata objects via a full-text query over all attached files metadata fields. E.g. \"RNA-Seq of human dendritic cells\". Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata objects by querying related attachment files", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/link/study/by/file/{id}" : { - "get" : { - "operationId" : "getStudyByFileAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve study metadata by querying attachment file ID (accession)", - "tags" : [ "Study integration as User" ] - } - }, - "/api/v1/as-user/integration/fulltext/search/studies" : { - "post" : { - "description" : "Find studies and retrieve their data using full-text search or facet search by metadata of study itself or child object (samples, libraries, preparations, signal groups). Only studies available to that users are returned.\n\nThe endpoint returns:\n- a list of studies with their metadata summary;\n- a list of filter objects with counts; filter list is the same for all users in an and can be configured in “Study Browser” application via \"Configure facets\" (by a user with corresponding permission); for each filter object, only the first 5 most popular facets are returned, the facts are sorted by the count value in descending order; only studies available to user are counted.\n\nFilter attributes for fulltext search:\n- `\"type\": \"FULL_TEXT\"`\n- `\"match\"`\n- `\"mode\"`\n\nFor details on two latter ones, see the request body model. Only one filter with `\"type=\": \"FULL_TEXT\"` can be passed in the request body.\n\nTo filter studies via facets, the filter attributes are necessary: type = SELECT, filterOptionId. For details, use the request body model. filterOptionId can be obtained from the response body when the endpoint is first called without filters. Multiple filters with type = SELECT can be passed in the request body. Filters within the same attribute are automatically used with the OR operator. Filters of different attributes are automatically used with the AND operator. This behaviour can not be changed.\n\nIt is possible to call the endpoint without any filters, then all the studies available to the user are returned.", - "operationId" : "searchStudiesByFilterAsUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SearchStudyRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/FindObjectsResponse" - } - } - }, - "description" : "The request was successful. Retrieved studies and filters." - }, - "400" : { - "content" : { }, - "description" : "Invalid request body" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Genestack API token in the `Genestack-API-Token` HTTP header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Find and retrieve studies by full-text or facet query", - "tags" : [ "Study integration as User" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-user/integration/link/variant/by/sample/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantBySampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant run-level data by querying related sample ID (accession)", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/integration/link/variant/group/by/study/{id}" : { - "get" : { - "description" : "## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n", - "operationId" : "getVariantGroupsByStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/MetadataWithId" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group metadata by querying study ID (accession)", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/integration/link/variant/run-to-samples/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n", - "operationId" : "getVariantRunToSamplePairsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run-sample pairs by group id. Pagination is based on unique runs, not unique pairs.", - "tags" : [ "Variant integration as User" ] - } - }, - "/api/v1/as-user/links" : { - "get" : { - "description" : "Please make sure that this endpoint should be used only for getting all links to a specific object. In case you specify both firstId and secondId an expected answer would be true for existing links and false for no link between the objects.", - "operationId" : "getLinksByParamsAsUser", - "parameters" : [ { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "firstId", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "firstType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Object ID (accession) (e.g. accession of study)", - "in" : "query", - "name" : "secondId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Type of the object (e.g. study)", - "in" : "query", - "name" : "secondType", - "schema" : { - "type" : "string" - } - }, { - "description" : "Param says to skip that many links before beginning to return links.", - "in" : "query", - "name" : "offset", - "schema" : { - "default" : 0, - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Param says to limit the count of returned links.", - "in" : "query", - "name" : "limit", - "schema" : { - "default" : 1000, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links matching the specified criteria.", - "tags" : [ "Linkage as User" ] - } - }, - "/api/v1/as-user/links/get-batch" : { - "post" : { - "description" : "Please make sure to use that endpoint for batch calls only. You are not allowed to pass 'mixed' objects. e.g. Studies and Samples at the same time. Please always specify firstType.", - "operationId" : "getLinksByIdsAsUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/BatchOfIds" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Finds existing links by passing many IDs. \nPagination goes through all links matched the criteria.", - "tags" : [ "Linkage as User" ], - "x-codegen-request-body-name" : "request" - } - }, - "/api/v1/as-user/omics/cells" : { - "get" : { - "description" : "Retrieve cell objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsAsUser", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `RNA-Seq of human dendritic cells`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`\n", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `illumina HiSeq500`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`\n", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `reversed-phase liquid chromatography`. Queries matching dictionary terms are automatically expanded to include synonyms.\n", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or t-SNE values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to cell expression data and originally uploaded in TSV format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the cell measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve Cell objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/cells/expression/data" : { - "get" : { - "description" : "Retrieve cell expression objects by searching across multiple metadata types.\n\n## Conditions\nIt is possible to supply conditions for:\n1. Parent studies (full-text or metadata key-value pair)\n2. Samples (full-text or metadata key-value pair)\n3. Libraries (full-text or metadata key-value pair)\n4. Preparations (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.", - "operationId" : "omicsSearchCellsExpressionDataAsUser", - "parameters" : [ { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for cells by their metadata attributes. The following attributes are supported:\n1. Strings: `barcode`, `batch`, `cellType`, `cluster`, and all custom attributes.\n2. Integers: `nCounts`\n3. Floats: `percentMito`\n4. Float coordinates: `UMAP`, `PCA`, `t-SNE`.\n5. All other attributes are considered to be custom and stored as string data type.\n\nTo use filters for cell metadata objects use the following query types:\n1. By key=value pair for attributes. Single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace: `cellType=T_cell`, `batch=\"PBMC batch 01\"` - quote values that include spaces, `nCounts=3000`, `custom_attribute=\"disease\"` - custom attribute with string data type.\n2. It is possible to specify a set of possible values, separated by comma: `cellType=Macrophage,Monocyte`.\n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: `nCounts > 2000`, `-3 < percentMito < 10`. To retrieve UMAP, PCA or `t-SNE` values use `umap.1`, `umap.2`, `pca.1`, `pca.2`, `tsne.1`, `tsne.2`, e.g. `umap.1 > 0.5`.\n4. Use substring search to get the records where the attribute field contains the provided substring: `cellType =~ \"B cell\"`.\n5. Combine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses:\n* `NOT cellType=Erythrocyte` or `cellType!=B_cell,T_cell`: exclude objects with defined values from search.\n* `batch=BatchA && percentMito<0.8` or `batch=BatchA AND percentMito<8`: select all objects with BatchA and percentMito less than 0.8.\n* `cluster=1 || cluster=2` or `cluster=1 OR cluster=2`: select all objects where cluster 1 or 2.\n* `percentMito>0.2 && nCounts>=1000`: select all objects where percentMito is greater than 0.2 and nCounts is more or equal to 1000.\n* `batch=BatchA && (cluster=3 || -3 < percentMito < 8)`: combine logical operators in one query.", - "in" : "query", - "name" : "cellQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve cell expression objects by searching across multiple metadata types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/data" : { - "get" : { - "description" : "Retrieve any data objects whose linked data matches all supplied conditions.This endpoint does not support search by expression linked to Cell group. Use /omics/cells/expression/data endpoint for search by Cell expression.\n\nNote: An expression data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchExpressionGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/expression/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a tabular file that matches a sample/library/preparations query/filter. If no query/filters are supplied all expression data is returned. If a metadata filter is specified, this endpoint will only return expression data that is associated with a sample via the Sample Source ID attribute.\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Libraries (full-text or metadata key-value pair)\n3. Preparations (full-text or metadata key-value pair)\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n \n\n## Error Handling\n In case of unexpected internal error during data retrieval, the last line of the body will contain an error message, prefixed by the `#` character \n\n", - "operationId" : "omicsSearchStreamedExpressionDataAsUser", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g.`\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Deprecated; use `exQuery` parameter instead. Filters results by the feature column (e.g., Gene ID). The feature parameter value must match the name of the identifier in the GCT file (under the NAME column). Example: `ENSG00000077044`", - "explode" : true, - "in" : "query", - "name" : "featureList", - "schema" : { - "items" : { - "type" : "string", - "example" : "KRAS" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Accession of the expression group object (GCT)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The number of digits after the decimal point for floating-point values. The final value is rounded up. Must be non-negative. The default is 4.", - "in" : "query", - "name" : "roundDigits", - "schema" : { - "default" : 4, - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/csv" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Expression data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given tabular file", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/flow-cytometry/data" : { - "get" : { - "description" : "Retrieve flow cytometry data objects whose linked data matches all supplied conditions.\n\nNote: A flow cytometry data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve flow cytometry data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/flow-cytometry/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchFlowCytometryGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchSamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve sample metadata objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/data" : { - "get" : { - "description" : "Retrieve variant data objects whose linked data matches all supplied conditions.\n\nNote: A variant data query must be supplied.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked expression objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantDataAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve variant data objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/group" : { - "get" : { - "description" : "Retrieve group objects whose linked data matches all supplied conditions.\n\n## Conditions\nIt is possible to supply conditions for:\n\n1. Samples (full-text or metadata key-value pair)\n2. Parent studies (full-text or metadata key-value pair)\n3. Linked variant objects (list of data key-value pairs)\n4. Linked flow cytometry objects (list of data key-value pairs)\n5. Linked any data (except variant and flow cytometry) objects (list of data key-value pairs)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Data queries\nData queries must be a list of key-value pairs, separated by whitespace. The set of valid keys depends on the specific query type, and is documented in the query parameter summary. The values can be simple non-whitespace strings, or strings enclosed by speech marks (`\"`). Depending on the key, the value may be be a comma-delimited list of string values. Others require numerical values.\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a cursor tag. To retrieve the next page of results please supply this cursor tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result. To return all results iterate through pages using cursor values until the `resultsExhausted` response field is true.\n\n", - "operationId" : "omicsSearchVariantGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n", - "in" : "query", - "name" : "studyFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "studyQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "libraryFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "libraryQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "preparationFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "preparationQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "vxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `feature.NAME=1007_s_at` or `feature.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `feature.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`feature.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`feature.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < feature.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `feature.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`value.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < value.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`), `NOT` (`!`) logical operators and parentheses: \n* `NOT feature.Name_1=A`: Select all rows where Name_1 is not A. \n* `feature.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `feature.Name_1=A AND feature.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `feature.Name_1=A && feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A OR feature.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `feature.Name_1=A || feature.Name_2=B`: Equivalent to the example above. \n* `feature.Name_1=A AND (feature.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by expression metadata (key-value metadata pair(s)). E.g. `\"Genome Version\"=hg19-BROAD`.", - "in" : "query", - "name" : "exFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to flow cytometry data via data query (key-value pair(s)). E.g. `ReadoutType=Median|Count` `CellPopulation=\"CD45+, live\"` `MinValue=3.5`", - "in" : "query", - "name" : "fxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Filter by flow cytometry metadata (key-value metadata pair(s)). E.g. `Organ=blood`.", - "in" : "query", - "name" : "fxFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique identifier (accession) of Reference Genome object.", - "in" : "query", - "name" : "referenceGenomeId", - "schema" : { - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/OmicsResponse" - } - } - }, - "description" : "Omics query result." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve group objects by searching across multiple data types", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/variant/streamed-data" : { - "get" : { - "description" : "Stream data from a given group for a VCF file that matches a sample query/filter. If no query/filters are supplied all variant data is returned. If a metadata filter is specified, this endpoint will only return variant data that is associated with a sample via metadata attribute.\n\n## Conditions\nIt is possible to supply conditions for Samples (full-text or metadata key-value pair)\n\n## Metadata full-text queries\nSingle words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n", - "operationId" : "omicsSearchStreamedVariantDataAsUser", - "parameters" : [ { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n", - "in" : "query", - "name" : "sampleFilter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "sampleQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Search for objects linked to expression data and originally uploaded in TSV or GCT format via data query, e.g., `feature=ENSG00000230368,ENSG00000188976 value>=1.50`\n For the case when the original data is represented by multiple attributes per feature scenarios, extended filtering syntax is as follows: \n1. By feature attribute value for numeric and string attributes: `features.NAME=1007_s_at` or `features.\"Average Mz\"=2.218`. As in the case of sample metadata queries, single words can be supplied as is; otherwise, use speech marks (`\"`) to quote queries that include whitespace. \n2. It is possible to specify a set of possible values, separated by comma: `features.NAME=1007_s_at,121_at`. \n3. Utilize range filters to search numeric attributes. Apply `<` (less than), `>` (greater than), and `=` (equal to) symbols to specify the desired ranges as follows: \n`features.Name_1 > 3`: Select all rows where the feature attribute Name_1 values are greater than 3. \n`features.Name_2 >= 6`: Select all rows where the feature attribute Name_2 values are greater than or equal to 6. \n`-3 < features.Name_3 < 3`: Select all rows where the feature attribute Name_3 values lie within the interval between -3 and 3. \n4. Use substring search to get the records where the attribute field contains the provided substring: `features.attribute1 =~ \"some text\"`. \n5. The first column for each original data file is identified as feature accession (typically, it contains gene or protein names, accession IDs, etc.). Searching by such feature accession would significantly outperform more complex queries by combining the other feature attributes. To enable such a search, use `feature` without any attribute extension, e.g., `feature=ENSG00000230368,ENSG00000188976`.\n \nThe `value` keyword can be used to select rows where the sample (library or preparation) measurements has values from a certain range. Examples: `value = 3`, `value > 3`, `-3 < value < 3`. When the original data contains multiple measurements for a single item, such as a sample (library or preparation), use the measurement name to specify the exact column type, e.g.: \n1. `value.intensity = 3`: Selects all rows where the measurement attribute intensity equals 3. \n `value.intensity != 2,null`: Select all rows where the measurement attribute intensity is not equal 2 and is not an empty value. \n`values.p_value > 3`: Selects all rows where the measurement attribute 'p_value' values are greater than 3. \n`-3 < values.FC < 3`: Selects all rows where the measurement attribute 'FC' values lie within the interval between -3 and 3.\n \n2. Note: The `MinValue` keyword has been deprecated and should be replaced with the aforementioned comparisons.\n \nCombine multiple filters for different feature attributes and measurements using `AND` (`&&`), `OR` (`||`) logical operators and parentheses: \n* `features.Name_1!=A`: Select all rows where Name_1 is not A. \n* `features.Name_1!=A,B,C`: Select all rows where Name_1 is not A, B, or C. \n* `features.Name_1=A AND features.Name_2=B`: Select all rows where Name_1 is A and Name_2 is B. \n* `features.Name_1=A && features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A OR features.Name_2=B`: Select all rows where Name_1 is A or Name_2 is B. \n* `features.Name_1=A || features.Name_2=B`: Equivalent to the example above. \n* `features.Name_1=A AND (features.Name_2=B OR value>=1.0)`: Select all rows where Name_1 is A and either Name_2 is B or minimal possible measurement value is 1.0.", - "in" : "query", - "name" : "exQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for objects linked to variant data by SNPs properties. Filtering is currently supported by `filter`, `id`, `region` and `info` keywords, as well as `exists` keyword for `INFO` field and their logical combinations by means of `not` (`!`), `and` (`&&`), and `or` (`||`) operators with standard boolean precedence. Keyword case is ignored.\n * `filter` corresponds to the `FILTER` column in the original vcf file. Could be either equals or not equals to `PASS` : `filter = PASS` or `filter != pass`.\n * `id` is a string value that corresponds to the `ID` column. Multiple values could be added via a comma. Expression `id = rs3214,rg1234` is equivalent to `id = rs3214 or id = rg1234`.\n * `region` corresponds to CHROM and POS columns. Supports querying by the whole chromosome `region = chr1` , by interval within a chromosome `region = chr1:4567-9876543` by exact position `region = chr1:456789` or by indefinite ranges like `region = x:3456789-*` . Multiple regions could be separated via comma, e.g. `region = chr1:34567-98767,chr3` is equivalent to `region = chr1:34567-98767 or region = chr3`.\n * `feature` is the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name(s), such as `feature=TP53` or `feature=TP53,TGFB`, variants located within the same genomic region as the specified gene(s) will be retrieved.\n * Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(INFO.KEY)`. Use `!exists(INFO.KEY)` to exclude variants having the key from the search results. Provide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search. Due to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches. This means any differences smaller than that won't be detected. For more precise results, please use range queries.", - "in" : "query", - "name" : "vxQuery", - "schema" : { - "type" : "string" - } - }, { - "description" : "Accession of the variant group object (VCF)", - "in" : "query", - "name" : "groupAccession", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/StreamingOutput" - } - } - }, - "description" : "Stream of retrieved Variant data." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in request. See error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Stream data from a given VCF file", - "tags" : [ "Omics queries as User" ] - } - }, - "/api/v1/as-user/omics/cells/analytics/cell-ratio" : { - "post" : { - "operationId" : "cellRatioAsUser", - "summary" : "[BETA] Compute cell ratio statistics across groups or metadata attributes in single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint calculates cell ratio statistics based on single-cell metadata.\n\nIt allows quantifying the proportion of cells that meet specific criteria (`countSelected`, e.g. expression threshold, cell type, or cluster)\nrelative to a defined reference group or the total cell population (`countAvailable`) defined by study, samples, library, or preparation metadata.\n\n`countAvailable` parameter returns all cells specified in study, sample, library, or preparation queries and filters.\nIn case `exQuery` is selected, only cells linked to cell expression will be counted in `countSelected` parameter.\n\nThe endpoint supports filtering by study, sample, library, or preparation metadata and filtering by cell expression or cell metadata fields.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRRequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/CRResponse" - } - } - }, - "description" : "Cell ratio result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/omics/cells/analytics/differential-expression" : { - "post" : { - "operationId" : "differentialExpressionAsUser", - "summary" : "[BETA] Perform differential gene expression analytics between case and control cell groups", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint computes differential gene expression between two specified cell groups (case vs control) within single-cell data.\n\nConsult `/omics` search endpoints to find description of parameters within the cell groups.\nThe response includes per-gene metrics that characterize expression differences between the two groups:\n- `Gene name` - gene identifier.\n- `Case cell count` - number of cells expressing the gene in the case group.\n- `Control cell count` - number of cells expressing the gene in the control group.\n- `Average expression (case)` - mean expression level across case cells.\n- `Average expression (control)` - mean expression level across control cells.\n- `Expression difference` - numerical difference between average expressions.\n- `Fold change` - ratio of average expressions between case and control groups.\n- `U statistic` - Mann–Whitney U test statistic that measures the difference between Case and Control groups.\n- `p-value` - the probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true.\n\nResults are sorted by absolute value of fold change in descending order, allowing easy identification of the most differentially expressed genes.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DERequest" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DEResponse" - } - } - }, - "description" : "Differential expression result" - }, - "400" : { - "content" : { }, - "description" : "Entities cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/omics/cells/analytics/gene-summary" : { - "post" : { - "operationId" : "geneSummaryAsUser", - "summary" : "[BETA] Compute and retrieve descriptive statistics and visual summaries for single-cell data.", - "tags" : [ "[BETA] Analytics omics queries as User" ], - "description" : "This endpoint provides descriptive statistical metrics for gene expression across single-cell datasets.\nIt aggregates and summarizes expression data for each gene to help assess variability, distribution,\nand intensity of expression within the population of cells.\n\nThe computed metrics include:\n - `Gene name` - gene identifier.\n - `Cell count` - number of cells with measurable expression for each gene.\n - `Mean expression value`\n - `Median expression value`\n - `Quantiles` - configurable expression percentiles.\n - `Histogram (density)` - binned distribution of expression levels for visualization.\n - `Standard deviation` - dispersion of expression values.\n - `Minimum and maximum values` - range of expression across cells.\n\nResults are sorted by gene name.\n\nRequest and response parameters are subject to change as this feature is in BETA.\n", - "requestBody" : { - "required" : true, - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSRequest" - } - } - } - }, - "responses" : { - "200" : { - "description" : "Gene summary result", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GSResponse" - } - } - } - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization`\nHTTP header (e.g. Authorization: bearer [token]) or Genestack API token in the `Genestack-API-Token`\nheader (this token may be obtained from the Genestack UI _Profile_ page).\n" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected\nfailure in the Genestack system, please file a bug report to support@genestack.com,\nincluding the error details.\"\n" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-user/integration/link/files/by/study/{id}" : { - "get" : { - "operationId" : "getFilesByStudyAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Select `true` in order to include file structure (contents) for .h5, .h5ad, .zip, .gz to the response.", - "in" : "query", - "name" : "includeContents", - "required" : false, - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - }, - "text/tab-separated-values" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/AFile" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "Object with provided accession could not be found in ODM." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve file's metadata by study ID", - "tags" : [ "Files integration as User" ] - } - }, - "/api/v1/jobs/import/study" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportStudy", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import study metadata from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/samples" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportSamples", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of sample metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/samples/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportSamplesMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of sample metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/libraries" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportLibraries", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - }, - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of library metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/libraries/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportLibrariesMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of library metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/preparations" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportPreparations", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of preparation metadata objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/preparations/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n", - "operationId" : "startImportPreparationsMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportMetadataFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of preparation metadata objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/cells" : { - "post" : { - "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", - "operationId" : "startImportCells", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportCellsRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of cell data objects from a TSV file", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/cells/multipart" : { - "post" : { - "description" : "\nThe endpoint initiates a job to import cell data and creates a Cell Group to manage it.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n\nEmbedding constraints:\n\n* UMAP/t-SNE\n - Allowed number of dimensions per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** UMAP/t-SNE dimension is provided, the request is invalid.\n - At most **3** UMAP/t-SNE dimensions are stored; if more than 3 are provided, only the first 3 are kept and the rest are ignored.\n\n* PCA\n - Allowed number of components per cell: **0** (absent) or **≥ 2**.\n - If exactly **1** PCA component is provided, the request is invalid.\n - At most **100** PCA components are stored; components beyond 100 are ignored.\n\nNotes:\n- “Dimensions/components” refer to the length of the embedding vector for each cell.\n- Ignoring excess dimensions/components does not cause an error; validation errors occur only when the number is exactly **1**.\n", - "operationId" : "startImportCellsMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportCellsFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a group of cell data objects from a TSV file via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/expression" : { - "post" : { - "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", - "operationId" : "startImportExpression", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportExpressionSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import any tabular data from TSV or GCT files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/expression/multipart" : { - "post" : { - "description" : "## Data\n This operation necessitates the URL of a tabular data file, which must be either in TSV or GCT 1.2 format. Consult the user guide for a comprehensive understanding of the file content requirements. The endpoint is capable of handling uploads of any data type, which can be detailed in the parameters section, not only Gene Expression data.\n\n## Metadata\n It is also possible to optionally supply the URL of a metadata file. This metadata will be used as the original metadata for the created objects. The file is expected to contain single record with metadata describing the uploaded signal file.\n## Metadata file format\n * Format: Gene Cluster Text (GCT) and Tab-separated format (TSV), attribute names and record values are separated with tabs (`U+0009`), lines are separated with `CRLF` sequence (`U+000D U+000A`)\n * Extension: `.zip`, `.gz`, `.br`, `.lz4` are supported, treated as archives and get decompressed\n * Header: the first line is treated as table header that contains attribute names\n * Records: the second line contains the values for each of the attributes described in the header line. Values represent single string or list of strings. List values are separated using the \"pipe\" `|` (`U+007C`) separator. Values are trimmed of whitespace before parsing, and a literal `|` (`U+007C`) character may be escaped by repeating it twice.\n * Skip zeros in original data file: If this option is selected, zeros in the file will be ignored, thus conserving time and space. This option is particularly useful for handling very sparse data such as Single Cell data.", - "operationId" : "startImportExpressionMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportExpressionSignalRunFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import any tabular data from TSV or GCT files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/variant" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", - "operationId" : "startImportVariant", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import variation data and metadata from VCF and TSV files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/variant/multipart" : { - "post" : { - "description" : "\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```\n ", - "operationId" : "startImportVariantMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import variation data and metadata from VCF and TSV files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/flow-cytometry" : { - "post" : { - "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportFlowCytometry", - "parameters" : [ { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import flow-cytometry data and metadata from FACS and TSV files", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/flow-cytometry/multipart" : { - "post" : { - "description" : "This operation necessitates the URL of a gated flow cytometry data file, which must be in FACS format.\nConsult the user guide for a comprehensive understanding of the file content requirements.\nFor flow cytometry data in FCS format use expression endpoint.\n\nWhen job finishes successfully the following **result** object\ncan be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"groupAccession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportFlowCytometryMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportSignalRunFomMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import flow-cytometry data and metadata from FACS and TSV files via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/file" : { - "post" : { - "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `source` - The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link.\n* `dataLink` - a link to a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadataLink` - an optional URL of a metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportAFile", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ImportAFileRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import file as an attachment", - "tags" : [ "Data import jobs" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/import/file/multipart" : { - "post" : { - "description" : "In order to import a file as an attachment to a study, please fill in the following fields:\n\n* `data` - a file to import as an attachment.\nThe file will be associated with a study and will be searchable by its name and metadata.\n* `metadata` - an optional metadata file to be used as the original metadata\nfor the created objects. The file must contain a single record describing the uploaded attachment.\n* `studyAccession` - an accession of a study the file will be associated with.\n* `dataClass` - file data class with the following possible values: `Bulk\ntranscriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC,\npval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`,\n`Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`,\n`Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body\nfluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`,\n`Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics',\n`Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, `Document`, `Other`.\n\nWhen job finishes successfully the following **result** object can be obtained using `GET /job/{id}/output` request:\n\n```\n{\n \"accession\": \"GSF1234567\"\n}\n```", - "operationId" : "startImportAFileMultipart", - "requestBody" : { - "content" : { - "multipart/form-data" : { - "schema" : { - "$ref" : "#/components/schemas/ImportAFileFromMultipartRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import file as an attachment via multipart/form-data upload", - "tags" : [ "Data import via direct file upload" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/jobs/{jobExecId}/info" : { - "get" : { - "operationId" : "info", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "get information about one particular job execution", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/output" : { - "get" : { - "operationId" : "output", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Output" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "retrieve job output (result)", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/restart" : { - "put" : { - "operationId" : "restart", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "restart stopped (failed) job", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/jobs/{jobExecId}/stop" : { - "put" : { - "operationId" : "stop", - "parameters" : [ { - "in" : "path", - "name" : "jobExecId", - "required" : true, - "schema" : { - "format" : "int64", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Info" - } - } - }, - "description" : "successful operation" - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "stop running job", - "tags" : [ "Job operations" ] - } - }, - "/api/v1/as-curator/libraries" : { - "get" : { - "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchLibrariesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for library metadata objects", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/by/group/{id}" : { - "get" : { - "operationId" : "getLibrariesByGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve libraries related to the given group", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/{id}" : { - "get" : { - "operationId" : "getLibraryAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateLibraryAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a library object", - "tags" : [ "Library SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/libraries/{id}/versions" : { - "get" : { - "operationId" : "getLibraryVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-curator/libraries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getLibraryByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as Curator" ] - } - }, - "/api/v1/as-user/libraries" : { - "get" : { - "description" : "Retrieve library metadata objects by searching/listing library metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages using `pageOffset` values of `n * pageLimit` until a page returns fewer results than the page limit, which indicates there are no more results.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchLibrariesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by library metadata (key-value metadata pair(s)). E.g. `\"Library Type\"=RNA-Seq-1`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for library objects via a full-text query over all library metadata fields. E.g. `\"illumina HiSeq500\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for library metadata objects", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/by/group/{id}" : { - "get" : { - "operationId" : "getLibrariesByGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve libraries related to the given group", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}" : { - "get" : { - "operationId" : "getLibraryAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}/versions" : { - "get" : { - "operationId" : "getLibraryVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/as-user/libraries/{id}/versions/{version}" : { - "get" : { - "operationId" : "getLibraryByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Library" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single library object by ID (accession)", - "tags" : [ "Library SPoT as User" ] - } - }, - "/api/v1/manage-data/detached-objects" : { - "get" : { - "description" : "Retrieve various types of detached data objects. An object is defined as 'detached' if it lacks any direct or indirect link to a root-level object, which in this context is referred to as 'study'.\nStudy is considered as detached object itself in case there are no links to objects at a lower level.\nData with specific `detachedObjectType` can be retrieved by specifying the types in `detachedObjectType` parameter.\nThe detached objects are sorted according to their `detachedObjectType` and `genestack:accession`.\nSpecific ordering can be observed in the list of supported detached types found below.\nPagination of the results can be conveniently managed using the `cursor` and `limit` parameters.\n Supported types of detached objects (listed in the order of retrieval) include:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n\n", - "operationId" : "getDetachedObjects", - "parameters" : [ { - "description" : "Filter by detached object type. Multiple values can be used to filter the data.", - "explode" : true, - "in" : "query", - "name" : "detachedObjectType", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "limit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "This parameter enables retrieval of objects starting from a specific point.\n Currently, it represents the accession of the last obtained object. However, please note that its functionality might change over time, so it is advisable to consider the cursor's content as a general string.", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/DetachedCollection" - } - } - }, - "description" : "Retrieved detached data." - }, - "400" : { - "content" : { }, - "description" : "Detached data cannot be retrieved due to Bad Request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of detached objects", - "tags" : [ "Manage Data" ] - } - }, - "/api/v1/manage-data/data" : { - "delete" : { - "description" : "The objects will be marked for deletion. In case the selected object has more than one version, the endpoint deletes all of them. The following object types can be deleted by the endpoint:\n * `STUDY`\n * `SAMPLE_GROUP`\n * `SAMPLE_OBJECT`\n * `LIBRARY_GROUP`\n * `PREPARATION_GROUP`\n * `CELL_GROUP`\n * `TABULAR_DATA`\n * `GENE_VARIANT`\n * `FLOW_CYTOMETRY`\n * `REFERENCE_GENOME`\n * `FILE`\n\n Moreover, if the selected object is linked to any other data, the endpoint will also delete the linked data associated with it according to the specified rules:\n * If you delete a `STUDY`, the entire study with all the listed group types and files, will be removed.\n * Deleting a `SAMPLE_GROUP` will result in the removal of all samples associated with this sample group, along with any linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`LIBRARY_GROUP`/`PREPARATION_GROUP`/`CELL_GROUP`. The linked `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`/`CELL_GROUP` will be deleted, even if it is linked to another metadata group.\n * Deleting a `SAMPLE_OBJECT` will result in the removal of that sample from the study, and it will not be displayed in the version history. If a `LIBRARY_OBJECT` or `PREPARATION_OBJECT` is linked to this `SAMPLE_OBJECT`, it will be deleted as well.\n * Deleting a `LIBRARY_GROUP` or `PREPARATION_GROUP` will result in the removal of all libraries or preparations associated with this group, along with any linked `TABULAR_DATA`/`CELL_GROUP`.\n * Deleting a `CELL_GROUP` will result in the removal of linked `TABULAR_DATA` (cell expression group).\n * If you delete `TABULAR_DATA`/`GENE_VARIANT`/`FLOW_CYTOMETRY`, all associated data, such as links and runs will be removed from ODM.\n * If you delete `REFERENCE_GENOME`, searching for variant by variantFeature (genes) won't be available for linked VCF groups.\n * If you delete `FILE`, the file will be removed from ODM.", - "operationId" : "deleteData", - "parameters" : [ { - "description" : "Accessions files to be deleted.", - "explode" : false, - "in" : "query", - "name" : "accessions", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - } ], - "responses" : { - "202" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/ManagedObject" - }, - "type" : "array" - } - } - }, - "description" : "The deletion of the following files and all linked data has started." - }, - "400" : { - "content" : { }, - "description" : "Deletion could not be performed due to Bad Request." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method or the file is not meant to be deleted." - }, - "404" : { - "content" : { }, - "description" : "Some of the provided accessions could not be found in ODM. Deletion will not be preformed. Please review your list and repeat the attempt." - }, - "406" : { - "content" : { }, - "description" : "Some of the provided accessions do not belong to the supported object types. Deletion will not be performed. Please review your list and repeat the attempt." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete objects from ODM", - "tags" : [ "Manage Data" ] - } - }, - "/api/v1/as-curator/preparations" : { - "get" : { - "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchPreparationsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for preparation metadata objects", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/by/group/{id}" : { - "get" : { - "operationId" : "getPreparationsByGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparations related to the given group", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/{id}" : { - "get" : { - "operationId" : "getPreparationAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updatePreparationAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a preparation object", - "tags" : [ "Preparation SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/preparations/{id}/versions" : { - "get" : { - "operationId" : "getPreparationVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-curator/preparations/{id}/versions/{version}" : { - "get" : { - "operationId" : "getPreparationByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as Curator" ] - } - }, - "/api/v1/as-user/preparations" : { - "get" : { - "description" : "Retrieve preparation metadata objects by searching/listing preparation metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchPreparationsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by preparation metadata (key-value metadata pair(s)). E.g. `Digestion=Trypsin`", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for preparation objects via a full-text query over all preparation metadata fields. E.g. `\"reversed-phase liquid chromatography\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for preparation metadata objects", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/by/group/{id}" : { - "get" : { - "operationId" : "getPreparationsByGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve preparations related to the given group", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}" : { - "get" : { - "operationId" : "getPreparationAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}/versions" : { - "get" : { - "operationId" : "getPreparationVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/as-user/preparations/{id}/versions/{version}" : { - "get" : { - "operationId" : "getPreparationByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Preparation" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single preparation object by ID (accession)", - "tags" : [ "Preparation SPoT as User" ] - } - }, - "/api/v1/xrefsets" : { - "post" : { - "operationId" : "create", - "requestBody" : { - "description" : "Request body for creating a new xrefset.\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetCreateRequest" - } - } - }, - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetCreateResponse" - } - } - }, - "description" : "successful operation" - }, - "201" : { - "content" : { }, - "description" : "The objects were successfully created. The returned value is a list of created objects." - }, - "400" : { - "content" : { }, - "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details" - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to work with the xrefset." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Import a new xrefset file", - "tags" : [ "Xrefset queries" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/xrefsets/entries" : { - "get" : { - "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n## Important:\nThe length of 'sourceId' strings is limited to 255 characters. Ensure that the provided values adhere to this limitation to avoid data truncation.\n", - "operationId" : "searchEntries", - "parameters" : [ { - "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", - "explode" : true, - "in" : "query", - "name" : "sourceId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", - "explode" : true, - "in" : "query", - "name" : "targetId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetSearchResult" - } - } - }, - "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of entries across all xrefsets for given sourceId and targetId", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}" : { - "delete" : { - "operationId" : "deleteFile", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "pattern" : ".*", - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "Xrefset file successfully marked for deletion, mappings have been removed" - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to work with the xrefset." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Delete a xrefset with all related data.\nOnly users who uploaded the xrefset are allowed to delete it.", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}/entries" : { - "get" : { - "description" : "## Conditions\nIt is possible to supply a list of values for \"targetId\" and \"sourceId\". If non-empty lists of values for \"targetId\" and \"sourceId\" are supplied, the following search rule is applied: (sourceId = \"S1\" OR .. sourceId = \"Sn\") AND (targetId = \"T1\" OR .. targetId = \"Tm\").\n\n", - "operationId" : "searchEntriesWithinFile", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Supply sourceId in the format \"sourceId\". For transcript-gene mapping this is gene ID, e.g. \"ENSG00000146648\"", - "explode" : true, - "in" : "query", - "name" : "sourceId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Supply targetId in the format \"targetId\". For transcript-gene mapping this is transcript ID, e.g. \"ENST00000617423.4\"", - "explode" : true, - "in" : "query", - "name" : "targetId", - "schema" : { - "items" : { - "type" : "string" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "This parameter determines the number of results to retrieve per page, with the default set at 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetSearchResult" - } - } - }, - "description" : "Json object with the cursor and json array of retrieved xrefset data. Response entries are ordered by xrefset ID and then by source ID." - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of entries for the given xrefset and given sourceId and targetId", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/xrefsets/{id}/metadata" : { - "get" : { - "operationId" : "getDetailsByAccession", - "parameters" : [ { - "description" : "xrefset ID", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/XrefSetMetadata" - } - } - }, - "description" : "Object containing xrefset details, including user submitted metadata and system info" - }, - "400" : { - "content" : { }, - "description" : "Invalid data in the request. See the error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "The xrefset does not exist." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve xrefset details", - "tags" : [ "Xrefset queries" ] - } - }, - "/api/v1/reference-genomes" : { - "get" : { - "operationId" : "search_reference_genomes", - "summary" : "List or search for Reference Genome objects", - "tags" : [ "Reference genome" ], - "description" : "Retrieve Reference Genome metadata objects by searching/listing Reference Genome metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Paging\nFor performance reasons, this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the `pageOffset` query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To retrieve all results, iterate through pages by increasing the offset in multiples of limit (e.g., `offset = n * limit`), until all results have been retrieved. The total number of pages can be calculated by dividing the total number of results by the limit.\n\n## List operation\n\nThis endpoint can be called without any query parameters. When called this way, it returns a list of all Reference Genome objects.", - "parameters" : [ { - "in" : "query", - "name" : "organism", - "description" : "Scientific name of an organism (species) used in reference genome file (e.g. `Homo sapiens`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "assembly", - "description" : "Major version (for example, `GRCh38`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "release", - "description" : "Ensembl reference genome minor version (for example, `75` or `109`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "query", - "description" : "Search for reference genome via a full-text query over all reference genome metadata fields (e.g. `GRCh38`).", - "schema" : { - "type" : "string" - } - }, { - "in" : "query", - "name" : "pageLimit", - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "in" : "query", - "name" : "pageOffset", - "description" : "Show the page {pageOffset + 1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - }, - "post" : { - "operationId" : "upload", - "summary" : "Upload reference genome to ODM", - "tags" : [ "Reference genome" ], - "description" : "In order to import reference genome file, please fill in the following fields:\n\n* `annotationUrl` - link to the non-vertebrae organism or any custom reference genome in .gtf format, archived in `.gz` format.\nNote: if any of the parameters below are not corresponding to the available Ensembl data (for example, organism name or assembly is changed), the link must be provided.\n* `organism` - scientific name (default: Homo sapiens). Please see the list of available organisms [here](https://www.ensembl.org/info/about/species.html).\nNote: for some specific cases (Canis lupus breeds, Mus musculus strains, etc.) please see the species folders name in the Ensembl FTP (release 113) to provide the same organism name as shown in the list.\n* `assembly` - major version (for example, `GRCh38`). Please see the list of available assemblies [here](https://www.ensembl.org/info/website/archives/assembly.html).\n* `release` - Ensembl reference genome minor version (for example, `75` or `109`).\n* `name` - customized reference genome title that is used for linkage variant files.\nBy default is combined from species, assembly and release parameters: `{species} reference genome {assembly}.{release}`.\n\nReference genome will be available after initialisation. Please track initialisation task status.", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UploadRGRequest" - } - } - }, - "required" : false - }, - "responses" : { - "201" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/AccessionResponse" - } - } - }, - "description" : "The object was successfully created." - }, - "400" : { - "content" : { }, - "description" : "The object cannot be created. This error occurs when the supplied data or metadata are incorrect. Please see error message for details." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Not enough permissions to call method." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/reference-genomes/{id}" : { - "get" : { - "operationId" : "get_reference_genome_by_accession", - "summary" : "Retrieve a single Reference Genome object by ID (accession)", - "tags" : [ "Reference genome" ], - "parameters" : [ { - "in" : "path", - "name" : "id", - "description" : "Unique identifier (Genestack accession) of Reference Genome object.", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RGItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ] - } - }, - "/api/v1/as-curator/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchSamplesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for sample metadata objects", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-curator/samples/{id}" : { - "get" : { - "operationId" : "getSampleAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateSampleAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a sample object", - "tags" : [ "Sample SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/samples/{id}/versions" : { - "get" : { - "operationId" : "getSampleVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-curator/samples/{id}/versions/{version}" : { - "get" : { - "operationId" : "getSampleByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as Curator" ] - } - }, - "/api/v1/as-user/samples" : { - "get" : { - "description" : "Retrieve sample metadata objects by searching/listing sample metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all variant objects.", - "operationId" : "searchSamplesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by sample metadata (key-value metadata pair(s)). E.g. `\"Species or strain\"=\"Homo sapiens\"`\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for sample objects via a full-text query over all sample metadata fields. E.g. `Clozapine`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for sample metadata objects", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}" : { - "get" : { - "operationId" : "getSampleAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}/versions" : { - "get" : { - "operationId" : "getSampleVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/as-user/samples/{id}/versions/{version}" : { - "get" : { - "operationId" : "getSampleByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Sample" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single sample object by ID (accession)", - "tags" : [ "Sample SPoT as User" ] - } - }, - "/api/v1/scim/Groups" : { - "get" : { - "description" : "The endpoint returns a list of groups that the user has access to: where the user is a member of the group or if the user has the \"Manage Groups\" permission, then a list of all groups.\n The list can be filtered by group attributes using the filter parameter. If no filtering parameters are passed, then all available groups are returned. If there are no groups in the response body, the endpoint returns 200 OK.", - "operationId" : "findGroups", - "parameters" : [ { - "description" : "Filter by group attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   Using other operators returns an error.\n Groups can be filtered by displayName only.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=displayName eq \"Curator\".", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "If excludedAttributes=members is specified in the request, groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", - "in" : "query", - "name" : "excludedAttributes", - "schema" : { - "type" : "string" - } - }, { - "description" : "The 1-based index of the first result in the current set of list results.", - "in" : "query", - "name" : "startIndex", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The number of resources returned in a list response page. The value by default is 100.", - "in" : "query", - "name" : "count", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/FilterGroupsResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Incorrect syntax in the request. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of available groups", - "tags" : [ "Groups" ] - }, - "post" : { - "description" : "The endpoint creates a new user group in ODM. The endpoint does not update an existing group. A user who calls the endpoint is added to the group automatically with the \"Group admin\" role. The \"members\" attribute in the request body must be empty, otherwise the endpoint returns an error.\n The endpoint does not require any user permission.\n The endpoint does not check the uniqueness of the group name. The user can create any number of groups with the same name.\n If there are attributes in the request body that ODM does not support, then ODM ignores them.", - "operationId" : "createGroup", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Group" - } - } - }, - "required" : true - }, - "responses" : { - "201" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupResponse" - } - } - }, - "description" : "The operation is successful. The response body contains the representation of the newly created group." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "409" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, data conflict. See the error message for details." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Add a new user group", - "tags" : [ "Groups" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Groups/{id}" : { - "delete" : { - "description" : "The endpoint deletes a group in ODM. The group can be deleted, even if it has members: admins and not admins. Users of this group are not deactivated.\n Permissions to call the endpoint:\n   - If the user does not have the \"Manage groups\" permission:\n     * the user has \"Group admin\" role - the user can delete the group;\n     * the user has \"Group member\" role - the group can not be deleted, an error is returned;\n     * the user is not a member of the specified group - the group can not be deleted, an error is returned.\n   - If the user has the \"Manage groups\" permission - the user can delete the group regardless of user’s membership in this group.", - "operationId" : "deleteGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "The group has been successfully removed. No data is returned." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied group ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Delete a group", - "tags" : [ "Groups" ] - }, - "get" : { - "description" : "The endpoint returns a not deleted group by id, where id is an internal group id in ODM. Access to the group is required:\n   - If the user has the \"Manage groups\" permission, the endpoint returns not deleted group on the instance regardless of user’s membership in this group;\n   - If the user does not have the \"Manage groups\" permission, the endpoint returns only groups in which the user is a member. Otherwise, 404 Not Found is returned.", - "operationId" : "getGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "If excludedAttributes=members is specified in the request, Groups are returned without the members attribute. Other attributes are not supported in excludedAttributes parameter and ignored in the request → all attributes are returned in the response body.", - "in" : "query", - "name" : "excludedAttributes", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied group ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no available groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a group by id", - "tags" : [ "Groups" ] - }, - "patch" : { - "description" : "The endpoint updates one or several attributes of a specific group, where id is internal group id in ODM. Also the endpoints adds a new user to the group and removes users from the group.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of group attributes that can be edited: displayName, externalId, members. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM group scheme, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n The endpoint requires access to the group as admin of the group: the user has the \"Admin group\" role in the group or the user has the \"Manage groups\" permission.", - "operationId" : "patchGroup", - "parameters" : [ { - "description" : "String, unique identifier of the group in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/GroupPatch" - } - } - }, - "required" : true - }, - "responses" : { - "204" : { - "content" : { }, - "description" : "Group is successfully updated. No data is returned" - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Group admin\" role in the group or the \"Manage groups\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no groups with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Update a group", - "tags" : [ "Groups" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Users" : { - "get" : { - "description" : "The endpoint returns a list of active users. The list can be filtered by user attributes using the filter parameter. If no filtering parameters are passed, then all users are returned. If there are no users in the response body, the endpoint returns 200 OK. The \"Manage organization\" permission is required.", - "operationId" : "findUsers", - "parameters" : [ { - "description" : "Filter by user attributes. The parameter name is case-sensitive, therefore parameters FILTER, fiLter, and other options are ignored.\n Supported operators:\n   eq - equal, the attribute and operator values must be identical for a match;\n   and - logical \"and\", the filter is only a match if both expressions evaluate to true;\n   Using other operators returns an error.\n Attribute names and attribute operators used in filters are case insensitive.\n Examples of the request:\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] - returns a user with login = user@example.com\n   filter=userName eq \"bjensen\"\n   filter=emails[type eq \"work\" and value eq \"user@example.com\"] and userName eq \"bjensen\".", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "The 1-based index of the first result in the current set of list results.", - "in" : "query", - "name" : "startIndex", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The number of resources returned in a list response page. The value by default is 100.", - "in" : "query", - "name" : "count", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/FilterUsersResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Incorrect syntax in the request. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of all active users", - "tags" : [ "Users" ] - }, - "post" : { - "description" : "The endpoint creates a new user in ODM or updates the existing user. A user can be updated by this endpoint if the user has the same login as in the request body. The \"Manage organization\" permission is required. The endpoint does not allow to specify the user's password and user permissions, these parameters can be set in the web application by a user with the \"Manage organization\" permission.\n Only one email can be specified.", - "operationId" : "createUser", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/User" - } - } - }, - "required" : true - }, - "responses" : { - "201" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "The operation is successful. The response body contains the representation of the newly created or updated user." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "409" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be created, data conflict. See the error message for details." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Add a new user", - "tags" : [ "Users" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/scim/Users/{id}" : { - "delete" : { - "operationId" : "deleteUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "204" : { - "content" : { }, - "description" : "The user has been successfully deactivated. No data is returned." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied user ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Deactivate a user", - "tags" : [ "Users" ] - }, - "get" : { - "description" : "The endpoint returns an active user by id, where id is internal user id in ODM. The \"Manage organization\" permission is required.", - "operationId" : "getUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "The request was successful." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The supplied user ID is invalid." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no available users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a user by id", - "tags" : [ "Users" ] - }, - "patch" : { - "description" : "The endpoint updates one or several attributes of a specific user, where id is internal user id in ODM.\n\n Supported operators in the request body: replace, add, remove. For details of the syntax of using these operators, we recommend that you refer to the SCIM 2.0 specification.\n\n The list of user attributes that can be edited: userName, externalId, displayName, active. If the user tries to edit other attributes, e.g. id, an error is returned. If the user tries to edit attributes that are not supported in the ODM user scheme, e.g. name name.familyName, this attribute is ignored. If the request body includes only attributes that are not supported by ODM, the endpoint returns 200 OK.\n\n A PATCH request, regardless of the number of operations, is treated as atomic. If a single operation encounters an error condition, the original user attributes are restored, and a failure status is returned.\n\n It is possible to update attributes of the deactivated users.\n\n The endpoint requires the \"Manage organization\" permission.", - "operationId" : "patchUser", - "parameters" : [ { - "description" : "String, unique identifier of the user in ODM.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/UserPatch" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/UserResponse" - } - } - }, - "description" : "User is successfully updated. The response body contains the representation of the updated user." - }, - "400" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "The object cannot be updated, the supplied data or metadata are incorrect. See the error message for details." - }, - "401" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "Operation is not permitted. The \"Manage organization\" permission is required." - }, - "404" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/SCIMErrorResponse" - } - } - }, - "description" : "There are no users with the specified id." - }, - "500" : { - "content" : { - "application/scim+json" : { - "schema" : { - "$ref" : "#/components/schemas/BaseErrorResponse" - } - } - }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Genestack-API-Token" : [ ] - }, { - "Access-token" : [ ] - } ], - "summary" : "Update a user", - "tags" : [ "Users" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/studies" : { - "get" : { - "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", - "operationId" : "searchStudiesAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for study metadata objects", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-curator/studies/{id}" : { - "get" : { - "operationId" : "getStudyAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as Curator" ] - }, - "patch" : { - "description" : "## Basic operation\nThe object metadata is updated using the supplied map of attribute names to attribute values. There are three cases:\n1. The attribute name does not already exist in the object metadata. In this case, the attribute and value are added to the object metadata.\n2. The attribute name already exists in the object metadata. In this case, the value is updated.\n3. The attribute value is `null`.In this case, the attribute is removed from the object metadata.\n\n## Attribute values\nThe attribute values are intelligently parsed as booleans, integers, etc.", - "operationId" : "updateStudyAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/MetadataContent" - } - } - }, - "description" : "Metadata in the form of `{key: value, key2: value2, ...}`", - "required" : false - }, - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The objects was successfully created. The returned value is the updated object, along with any warnings." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID or metadata is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Update a study object", - "tags" : [ "Study SPoT as Curator" ], - "x-codegen-request-body-name" : "body" - } - }, - "/api/v1/as-curator/studies/{id}/versions" : { - "get" : { - "operationId" : "getStudyVersionsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-curator/studies/{id}/versions/{version}" : { - "get" : { - "operationId" : "getStudyByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as Curator" ] - } - }, - "/api/v1/as-user/studies" : { - "get" : { - "description" : "Retrieve study metadata objects by searching/listing study metadata.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n * pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all study objects.", - "operationId" : "searchStudiesAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by study metadata (key-value metadata pair(s)). E.g. `\"Study Source\"=ArrayExpress`\n\n\n", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for study objects via a full-text query over all study metadata fields. E.g. `\"RNA-Seq of human dendritic cells\"`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Attribute to sort by, with optional ascending/descending marker, of the form `\"[+|-]\"`.\n\nNo marker or `\"+\"` indicates ascending sort, and `\"-\"` indicates descending sort.\n\n*Default:* sort by ID in ascending order.", - "in" : "query", - "name" : "sort", - "schema" : { - "enum" : [ "id", "creation", "last_update", "name", "+id", "+creation", "+last_update", "+name", "-id", "-creation", "-last_update", "-name" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return. This value must be between 0 and 2000 (inclusive).", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - }, - "text/tab-separated-values" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "List or search for study metadata objects", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}" : { - "get" : { - "operationId" : "getStudyAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}/versions" : { - "get" : { - "operationId" : "getStudyVersionsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of object versions by ID", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/as-user/studies/{id}/versions/{version}" : { - "get" : { - "operationId" : "getStudyByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/Study" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single study object by ID (accession)", - "tags" : [ "Study SPoT as User" ] - } - }, - "/api/v1/tasks/publish-versions" : { - "post" : { - "description" : "This endpoint publishes all information from drafts and creates new metadata versions for each study/associated objects with unpublished changes. Only curators with the ACCESS_ALL_DATA permission can use this method.", - "operationId" : "publishAllStudies", - "parameters" : [ { - "description" : "Supply text to name this version. If not supplied the version name is set to “Auto-published by API call”", - "in" : "query", - "name" : "versionMessage", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "403" : { - "content" : { }, - "description" : "Forbidden" - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Asynchronous task that publishes all pending versions across all studies in the instance.", - "tags" : [ "Tasks API" ] - } - }, - "/api/v1/tasks/{id}" : { - "get" : { - "description" : "Supply the accession (id) of an ODM task to retrieve metadata about that task.", - "operationId" : "getTaskInfo", - "parameters" : [ { - "description" : "Accession of the task.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/TaskInfo" - } - } - }, - "description" : "Task information." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve information about any ODM task.", - "tags" : [ "Tasks API" ] - } - }, - "/api/v1/as-curator/variants" : { - "get" : { - "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getAllVariantsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", - "in" : "query", - "name" : "variantRegion", - "schema" : { - "items" : { - "type" : "string", - "example" : "2:233364596-233385916" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", - "in" : "query", - "name" : "variantFeature", - "schema" : { - "items" : { - "type" : "string", - "example" : "ENSG00000227232" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", - "in" : "query", - "name" : "variantId", - "schema" : { - "items" : { - "type" : "string", - "example" : "rs334" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", - "in" : "query", - "name" : "variantFilter", - "schema" : { - "enum" : [ "pass", "noPass" ], - "type" : "string" - } - }, { - "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", - "in" : "query", - "name" : "variantInfo", - "schema" : { - "type" : "string" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantResponse" - } - } - }, - "description" : "Retrieved variant data." - }, - "400" : { - "content" : { }, - "description" : "Variant data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple variant data and metadata objects", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchGroupsAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group/by/run/{id}" : { - "get" : { - "operationId" : "getVariantGroupByRunAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/group/{id}" : { - "get" : { - "operationId" : "getVariantGroupAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant group by ID (groupId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchVariantRunsAsCurator", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}" : { - "get" : { - "operationId" : "getVariantAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by ID (itemId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}/versions" : { - "get" : { - "operationId" : "getVariantVersionsAsCurator", - "parameters" : [ { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of variant object versions by run ID (runId)", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-curator/variants/{id}/versions/{version}" : { - "get" : { - "operationId" : "getVariantByVersionAsCurator", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the variant object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by run ID and its version", - "tags" : [ "Variant SPoT as Curator" ] - } - }, - "/api/v1/as-user/variants" : { - "get" : { - "description" : "Retrieve all variant data and metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "getAllVariantsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "Specify a chromosome interval to find genes between these positions. E.g. `2:233364596-233385916`. Multiple intervals can be provided as a list.", - "in" : "query", - "name" : "variantRegion", - "schema" : { - "items" : { - "type" : "string", - "example" : "2:233364596-233385916" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify the name of the reference gene associated with a specific location in the reference genome which corresponds to the VCF file (variant group) from which the variant information is derived. By providing the gene name, such as `TP53`, variants located within the same genomic region as the specified gene will be retrieved. Multiple genes can be provided as a list.", - "in" : "query", - "name" : "variantFeature", - "schema" : { - "items" : { - "type" : "string", - "example" : "ENSG00000227232" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "One or more specific variation IDs can be specified. E.g. `rs838705`", - "in" : "query", - "name" : "variantId", - "schema" : { - "items" : { - "type" : "string", - "example" : "rs334" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "The parameter allows to retrieve gene variants based on the filters defined in the vcf file. If not specified, all variants are returned.\n\n 1. pass - return gene variants which passed all filters\n 2. noPass - return gene variants which failed one or more filters", - "in" : "query", - "name" : "variantFilter", - "schema" : { - "enum" : [ "pass", "noPass" ], - "type" : "string" - } - }, { - "description" : "Filter by vcf `INFO` fields. E.g. to filter all variants annotated in dbSNP add `exists(info.DB)`.\nUse `!exists(INFO.KEY)` to exclude variants having the key from the search results.\nProvide `info.key=value` pair to search for an exact match or `info.key!=value` to exclude it from the search.\nDue to the limits of precision in floating point numbers, we use a small range of 0.0000001 to identify close matches.\nThis means any differences smaller than that won't be detected. For more precise results, please use range queries.\nCombine multiple filters for `INFO` fields using `AND` (`&&`), `OR` (`||`) logical operators and parentheses", - "in" : "query", - "name" : "variantInfo", - "schema" : { - "type" : "string" - } - }, { - "description" : "Autogenerated numeric ID that corresponds to a column and is used to link data from the same run to a sample. Multiple values can be provided as a list.", - "in" : "query", - "name" : "runFilter", - "schema" : { - "$ref" : "#/components/schemas/RunFilter" - }, - "style" : "form" - }, { - "description" : "Column name from the file to which all data for a sample is related. Multiple values can be provided as a list to retrieve data from multiple columns.", - "explode" : true, - "in" : "query", - "name" : "runSourceFilter", - "schema" : { - "items" : { - "type" : "string", - "example" : "Run Source ID" - }, - "type" : "array" - }, - "style" : "form" - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantResponse" - } - } - }, - "description" : "Retrieved variant data." - }, - "400" : { - "content" : { }, - "description" : "Variant data cannot be retrieved." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve multiple variant data and metadata objects", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group" : { - "get" : { - "description" : "Retrieve all group metadata objects that match a query.\n\n## Metadata full-text queries\nSingle words can be supplied as is, otherwise use speech marks (`\"`) to quote queries that include whitespace. Speech marks and backslash characters in the query need to be escaped with a backslash (`\\`).\n\n## Metadata filters\nMetadata filters are key-value pairs joined by an operator. The `=` operator matches literal values/string. The `!=` operator matches anything except the literal value/string. The `<` or `>` operators match numerical results that are less or greater than the supplied value. Strings containing whitespace need to be quoted with (`\"`).\n\n## Combinations\nMetadata queries/filters for the same parameter can be combined with `&&`, `AND`, `||` and `OR` operators, using white-space to separate out the terms and operators. Parentheses `( )` can be used for complex expressions.\n\n## Versioning\nSpecific versions of omics data files (eg. GCT) can be queried via the useVersions parameter. Different versions of an omics data file are associated via their CHAIN_ID metadata value. This CHAIN_ID can be supplied to the useVersions parameter along with the version number or specific omics data file accessions to include them in the query. If nothing is supplied to the useVersions parameter then only the active version (which is usually the last one imported) is queried. This acts as a filter before the rest of the query is carried out.\n\nExample usage:\nuseVersions=* (query all versions, including those without CHAIN_IDs)\nuseVersions=v2 (query the second version. If there is no second version then the data file is not queried)\nuseVersions=v1,v0 (query the first version and any data files without CHAIN_IDs(v0) )\nuseVersions=GSVC002:v3 (for omics data files with a CHAIN_ID of GSCV002 query the third version)\nuseVersions=GSVC002:GSF00494,GSF000496 (for omics data files with a CHAIN_ID of GSCV002 query only the specific accessions GSF00494 and GSF000496)\n\nRules for multiple CHAIN_IDs can be supplied to the parameter using the ; separator.\n\n## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size. In order to retrieve all matching results the client needs to request multiple pages starting from an offset to the first result. You can do this using the pageOffset query parameter. A value of 0 (the default) instructs the server to return the first page of results, 100 would return a page of results starting from the 101st result and so on. To return all results iterate through pages using pageOffset values of `n*pageLimit` until the `resultsExhausted` response field is true.\n\n## List operation\n\nThis endpoint can be called with no `query` parameter. Doing so returns a list of all data objects.", - "operationId" : "searchVariantGroupsAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Filter by variant metadata (key-value metadata pair(s)). E.g. `\"Variant Source\"=dbSNP`.", - "in" : "query", - "name" : "filter", - "schema" : { - "type" : "string" - } - }, { - "description" : "Search for variant objects via a full text query over all variant metadata. E.g. `dbSNP`. Queries matching dictionary terms are automatically expanded to include synonyms.", - "in" : "query", - "name" : "query", - "schema" : { - "type" : "string" - } - }, { - "description" : "If the full-text query term is present in an ODM dictionary, enabling this parameter will modify the query to include child terms of the full-text query.\n\nFor example, the search query \"Body fluid\" can be expanded to include the term \"Blood\" (a child term of \"Body fluid\") so files containing either \"Body fluid\" or \"Blood\" in their metadata will be returned in the search results.\n\nThe parent-child relationship is defined by the key \"broaders\" or \"subClassOf\" in the dictionary.\n\nIf the full query term is not present in a dictionary then this parameter has no effect.", - "in" : "query", - "name" : "searchSpecificTerms", - "schema" : { - "type" : "boolean" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - }, { - "description" : "Specify which versions of omics data files are used in the query. By default the active version is used. See Versioning above. Syntax:\n\n\\* or `v` or ``:`v` or ``:``", - "in" : "query", - "name" : "useVersions", - "schema" : { - "type" : "string" - } - }, { - "description" : "Show the page {pageOffset+1} results from the start of the results. E.g. 100 will show a page of results starting from the 101st result. The default value is 0.", - "in" : "query", - "name" : "pageOffset", - "schema" : { - "format" : "int32", - "type" : "integer" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ListResponse" - } - } - }, - "description" : "The request was successful. The returned value is a list of objects." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve groups that match a query", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group/by/run/{id}" : { - "get" : { - "operationId" : "getVariantGroupByRunAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Unique identifier (runId) of the run.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single group object by run ID (runId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/group/{id}" : { - "get" : { - "operationId" : "getVariantGroupAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant group identifier (groupId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantMetadataWithId" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant group by ID (groupId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/runs/by/group/{id}" : { - "get" : { - "description" : "## Paging\nFor performance reasons this endpoint returns results in \"pages\" of limited size together with a `cursor` tag. To retrieve the next page of results please supply this `cursor` tag to resume the query from your previous result and get the next page. If there are no more results you will just retrieve an empty result.\n\n", - "operationId" : "searchVariantRunsAsUser", - "parameters" : [ { - "description" : "Unique identifier (accession) of the object.", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The page tag to resume results from (see paging above).", - "in" : "query", - "name" : "cursor", - "schema" : { - "type" : "string" - } - }, { - "description" : "Maximum number of results to return per page (see Paging above). This value must be between 0 and 2000 (inclusive). The default is 2000.", - "in" : "query", - "name" : "pageLimit", - "schema" : { - "format" : "int32", - "type" : "integer" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/RunsResponse" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve run objects related to the given group", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}" : { - "get" : { - "operationId" : "getVariantAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object unique identifier (itemId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/VariantItem" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by ID (itemId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}/versions" : { - "get" : { - "operationId" : "getVariantVersionsAsUser", - "parameters" : [ { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "items" : { - "$ref" : "#/components/schemas/CommitInfo" - }, - "type" : "array" - } - } - }, - "description" : "The request was successful. The returned value is the list of object versions." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a list of variant object versions by run ID (runId)", - "tags" : [ "Variant SPoT as User" ] - } - }, - "/api/v1/as-user/variants/{id}/versions/{version}" : { - "get" : { - "operationId" : "getVariantByVersionAsUser", - "parameters" : [ { - "description" : "Supply this parameter with the value `term_id` as part of the query to return extended information including IDs for values and dictionaries.", - "in" : "query", - "name" : "responseFormat", - "schema" : { - "$ref" : "#/components/schemas/ResponseFormat" - } - }, { - "description" : "Variant object run ID (runId).", - "in" : "path", - "name" : "id", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "Unique version of the variant object.", - "in" : "path", - "name" : "version", - "required" : true, - "schema" : { - "type" : "string" - } - }, { - "description" : "The parameter defines amount of metadata attributes to return:\n\n1. `minimal_data` - return metadata attributes according to the default template.\n2. `extended_data_included` - return metadata attributes according to applied template, if object doesn’t have applied template, default template will be used. This is the default for User endpoints.\n3. `original_data_included` - return all metadata attributes with values and null attributes, if they are present in the applied template. This is the default for Curator endpoints.", - "in" : "query", - "name" : "returnedMetadataFields", - "schema" : { - "enum" : [ "minimal_data", "extended_data_included", "original_data_included" ], - "type" : "string" - } - } ], - "responses" : { - "200" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/SignalRun" - } - } - }, - "description" : "The request was successful. The returned value is the object." - }, - "400" : { - "content" : { }, - "description" : "The supplied object ID is invalid." - }, - "401" : { - "content" : { }, - "description" : "User is not authenticated. Please supply a valid Access Token in the `Authorization` HTTP header (e.g. Authorization: bearer [token])\n or Genestack API token in the `Genestack-API-Token` header (this token may be obtained from the Genestack UI _Profile_ page)." - }, - "404" : { - "content" : { }, - "description" : "No object exists with the given ID." - }, - "500" : { - "content" : { }, - "description" : "An internal server error occurred. This indicates an unexpected failure in the Genestack system, please file a bug report to support@genestack.com, including the error details." - } - }, - "security" : [ { - "Access-token" : [ ] - }, { - "Genestack-API-Token" : [ ] - } ], - "summary" : "Retrieve a single variant object by run ID and its version", - "tags" : [ "Variant SPoT as User" ] - } - } - }, - "components" : { - "schemas" : { - "Cell" : { - "$ref" : "./schemas/cell/Cell.yaml" - }, - "CellListResponse" : { - "$ref" : "./schemas/cell/CellListResponse.yaml" - }, - "CommitInfo" : { - "$ref" : "./schemas/common/CommitInfo.yaml" - }, - "ExpressionItem" : { - "$ref" : "./schemas/expression/ExpressionItem.yaml" - }, - "ExpressionResponse" : { - "$ref" : "./schemas/expression/ExpressionResponse.yaml" - }, - "IntegrationHelper" : { - "$ref" : "./schemas/common/IntegrationHelper.yaml" - }, - "ListResponse" : { - "$ref" : "./schemas/common/ListResponse.yaml" - }, - "MetaResponse" : { - "$ref" : "./schemas/common/MetaResponse.yaml" - }, - "MetadataContent" : { - "$ref" : "./schemas/common/MetadataContent.yaml" - }, - "MetadataWithId" : { - "$ref" : "./schemas/common/MetadataWithId.yaml" - }, - "PaginationInfo" : { - "$ref" : "./schemas/common/PaginationInfo.yaml" - }, - "RunFilter" : { - "$ref" : "./schemas/common/RunFilter.yaml" - }, - "RunsResponse" : { - "$ref" : "./schemas/common/RunsResponse.yaml" - }, - "ResponseFormat" : { - "$ref" : "./schemas/common/ResponseFormat.yaml" - }, - "SignalRun" : { - "$ref" : "./schemas/common/SignalRun.yaml" - }, - "AFile" : { - "$ref" : "./schemas/afile/AFile.yaml" - }, - "FlowCytometryItem" : { - "$ref" : "./schemas/flow-cytometry/FlowCytometryItem.yaml" - }, - "FlowCytometryResponse" : { - "$ref" : "./schemas/flow-cytometry/FlowCytometryResponse.yaml" - }, - "AttributeInvalidValue" : { - "$ref" : "./schemas/integration/AttributeInvalidValue.yaml" - }, - "AttributeValidationSummary" : { - "$ref" : "./schemas/integration/AttributeValidationSummary.yaml" - }, - "BatchOfIds" : { - "$ref" : "./schemas/integration/BatchOfIds.yaml" - }, - "DataItem" : { - "$ref" : "./schemas/integration/DataItem.yaml" - }, - "DataPresentation" : { - "$ref" : "./schemas/integration/DataPresentation.yaml" - }, - "GroupValidationSummary" : { - "$ref" : "./schemas/integration/GroupValidationSummary.yaml" - }, - "IMetadata" : { - "$ref" : "./schemas/integration/IMetadata.yaml" - }, - "Library" : { - "$ref" : "./schemas/library/Library.yaml" - }, - "Link" : { - "$ref" : "./schemas/integration/Link.yaml" - }, - "MetadataPresentation" : { - "$ref" : "./schemas/integration/MetadataPresentation.yaml" - }, - "OmicsResponse" : { - "$ref" : "./schemas/integration/OmicsResponse.yaml" - }, - "OmicsResponseDataPresentation" : { - "$ref" : "./schemas/integration/OmicsResponseDataPresentation.yaml" - }, - "OmicsResponseMetadataPresentation" : { - "$ref" : "./schemas/integration/OmicsResponseMetadataPresentation.yaml" - }, - "OmicsResponseMetadataWithId" : { - "$ref" : "./schemas/integration/OmicsResponseMetadataWithId.yaml" - }, - "Preparation" : { - "$ref" : "./schemas/preparation/Preparation.yaml" - }, - "Relationships" : { - "$ref" : "./schemas/integration/Relationships.yaml" - }, - "SourceTypePair" : { - "$ref" : "./schemas/integration/SourceTypePair.yaml" - }, - "StreamingOutput" : { - "$ref" : "./schemas/integration/StreamingOutput.yaml" - }, - "Study" : { - "$ref" : "./schemas/study/Study.yaml" - }, - "StudyValidationSummary" : { - "$ref" : "./schemas/integration/StudyValidationSummary.yaml" - }, - "TaskInfo" : { - "$ref" : "./schemas/tasks/TaskInfo.yaml" - }, - "ValidationError" : { - "$ref" : "./schemas/integration/ValidationError.yaml" - }, - "SearchStudyRequest" : { - "$ref" : "./schemas/integration/SearchStudyRequest.yaml" - }, - "AppliedFilter" : { - "$ref" : "./schemas/integration/AppliedFilter.yaml" - }, - "PageRequest" : { - "$ref" : "./schemas/integration/PageRequest.yaml" - }, - "FindObjectsResponse" : { - "$ref" : "./schemas/integration/FindObjectsResponse.yaml" - }, - "ObjectsPage" : { - "$ref" : "./schemas/integration/ObjectsPage.yaml" - }, - "StudySearchInfo" : { - "$ref" : "./schemas/integration/StudySearchInfo.yaml" - }, - "MetainfoKeyForSummary" : { - "$ref" : "./schemas/integration/MetainfoKeyForSummary.yaml" - }, - "FilterOptionGroup" : { - "$ref" : "./schemas/integration/FilterOptionGroup.yaml" - }, - "FilterOption" : { - "$ref" : "./schemas/integration/FilterOption.yaml" - }, - "DERequest" : { - "$ref" : "./schemas/cell/DERequest.yaml" - }, - "DEResponse" : { - "$ref" : "./schemas/cell/DEResponse.yaml" - }, - "GSRequest" : { - "$ref" : "./schemas/cell/GSRequest.yaml" - }, - "GSResponse" : { - "$ref" : "./schemas/cell/GSResponse.yaml" - }, - "CRRequest" : { - "$ref" : "./schemas/cell/CRRequest.yaml" - }, - "CRResponse" : { - "$ref" : "./schemas/cell/CRResponse.yaml" - }, - "ExceptionTypeAndMessage" : { - "$ref" : "./schemas/job/ExceptionTypeAndMessage.yaml" - }, - "ImportCellsRequest" : { - "$ref" : "./schemas/job/ImportCellsRequest.yaml" - }, - "ImportCellsFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportCellsFromMultipartRequest.yaml" - }, - "ImportMetadataRequest" : { - "$ref" : "./schemas/job/ImportMetadataRequest.yaml" - }, - "ImportMetadataFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportMetadataFromMultipartRequest.yaml" - }, - "ImportSignalRunRequest" : { - "$ref" : "./schemas/job/ImportSignalRunRequest.yaml" - }, - "ImportSignalRunFomMultipartRequest" : { - "$ref" : "./schemas/job/ImportSignalRunFomMultipartRequest.yaml" - }, - "ImportExpressionSignalRunRequest" : { - "$ref" : "./schemas/job/ImportExpressionSignalRunRequest.yaml" - }, - "ImportExpressionSignalRunFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml" - }, - "ImportAFileRequest" : { - "$ref" : "./schemas/job/ImportAFileRequest.yaml" - }, - "ImportAFileFromMultipartRequest" : { - "$ref" : "./schemas/job/ImportAFileFromMultipartRequest.yaml" - }, - "Info" : { - "$ref" : "./schemas/job/Info.yaml" - }, - "JobRuntimeError" : { - "$ref" : "./schemas/job/JobRuntimeError.yaml" - }, - "Output" : { - "$ref" : "./schemas/job/Output.yaml" - }, - "DetachedCollection" : { - "$ref" : "./schemas/manage-data/DetachedCollection.yaml" - }, - "DetachedObject" : { - "$ref" : "./schemas/manage-data/DetachedObject.yaml" - }, - "ManagedObject" : { - "$ref" : "./schemas/manage-data/ManagedObject.yaml" - }, - "XrefSetCreateRequest" : { - "$ref" : "./schemas/reference-data/XrefSetCreateRequest.yaml" - }, - "XrefSetCreateResponse" : { - "$ref" : "./schemas/reference-data/XrefSetCreateResponse.yaml" - }, - "XrefSetMetadata" : { - "$ref" : "./schemas/reference-data/XrefSetMetadata.yaml" - }, - "XrefSetSearchResult" : { - "$ref" : "./schemas/reference-data/XrefSetSearchResult.yaml" - }, - "XrefSetSearchResultEntry" : { - "$ref" : "./schemas/reference-data/XrefSetSearchResultEntry.yaml" - }, - "UploadRGRequest" : { - "$ref" : "./schemas/reference-genome/UploadRGRequest.yaml" - }, - "AccessionResponse" : { - "$ref" : "./schemas/common/AccessionResponse.yaml" - }, - "RGItem" : { - "$ref" : "./schemas/reference-genome/RGItem.yaml" - }, - "Sample" : { - "$ref" : "./schemas/sample/Sample.yaml" - }, - "Group" : { - "$ref" : "./schemas/scim/Group.yaml" - }, - "Member" : { - "$ref" : "./schemas/scim/Member.yaml" - }, - "GroupPatch" : { - "$ref" : "./schemas/scim/GroupPatch.yaml" - }, - "PatchOperation" : { - "$ref" : "./schemas/scim/PatchOperation.yaml" - }, - "FilterGroupsResponse" : { - "$ref" : "./schemas/scim/FilterGroupsResponse.yaml" - }, - "GroupResponse" : { - "$ref" : "./schemas/scim/GroupResponse.yaml" - }, - "Meta" : { - "$ref" : "./schemas/scim/Meta.yaml" - }, - "SCIMErrorResponse" : { - "$ref" : "./schemas/scim/SCIMErrorResponse.yaml" - }, - "BaseErrorResponse" : { - "$ref" : "./schemas/scim/BaseErrorResponse.yaml" - }, - "ErrorMessage" : { - "$ref" : "./schemas/scim/ErrorMessage.yaml" - }, - "User" : { - "$ref" : "./schemas/scim/User.yaml" - }, - "Email" : { - "$ref" : "./schemas/scim/Email.yaml" - }, - "UserPatch" : { - "$ref" : "./schemas/scim/UserPatch.yaml" - }, - "FilterUsersResponse" : { - "$ref" : "./schemas/scim/FilterUsersResponse.yaml" - }, - "UserResponse" : { - "$ref" : "./schemas/scim/UserResponse.yaml" - }, - "VariantMetadataWithId" : { - "$ref" : "./schemas/variant/VariantMetadataWithId.yaml" - }, - "VariantItem" : { - "$ref" : "./schemas/variant/VariantItem.yaml" - }, - "VariantResponse" : { - "$ref" : "./schemas/variant/VariantResponse.yaml" - } - }, - "securitySchemes" : { - "Access-token" : { - "in" : "header", - "name" : "Authorization", - "type" : "apiKey" - }, - "Genestack-API-Token" : { - "in" : "header", - "name" : "Genestack-API-Token", - "type" : "apiKey" - } - }, - "parameters" : { - "AllowDuplicates" : { - "description" : "Load duplicate data: the data from the link(s) has already been previously loaded into ODM, and for **testing purposes**, you need to load this data again.", - "in" : "query", - "name" : "allow_dups", - "schema" : { - "default" : false, - "type" : "boolean" - } - } - } - } -} diff --git a/openapi/v1/schemas/afile/AFile.yaml b/openapi/v1/schemas/afile/AFile.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/afile/AFile.yaml +++ b/openapi/v1/schemas/afile/AFile.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/cell/CRRequest.yaml b/openapi/v1/schemas/cell/CRRequest.yaml index c357ac70..e69de29b 100644 --- a/openapi/v1/schemas/cell/CRRequest.yaml +++ b/openapi/v1/schemas/cell/CRRequest.yaml @@ -1,7 +0,0 @@ -type: object -properties: - cellGroup: - $ref: 'CellGroupRequest.yaml' - exQuery: - type: string - example: '-3 < value < 3' diff --git a/openapi/v1/schemas/cell/CRResponse.yaml b/openapi/v1/schemas/cell/CRResponse.yaml index afa265f4..e69de29b 100644 --- a/openapi/v1/schemas/cell/CRResponse.yaml +++ b/openapi/v1/schemas/cell/CRResponse.yaml @@ -1,21 +0,0 @@ -type: object -required: - - countSelected - - countAvailable - - ratio -properties: - countSelected: - type: integer - format: int32 - description: Count of Cells selected with all queries and filters. - example: 1243393 - countAvailable: - type: integer - format: int32 - description: Count of all available Cells limited by Study and SLP queries and filters. - example: 9234945 - ratio: - type: number - format: double - description: Ratio value - example: 0.13465 diff --git a/openapi/v1/schemas/cell/Cell.yaml b/openapi/v1/schemas/cell/Cell.yaml index 4d636509..e69de29b 100644 --- a/openapi/v1/schemas/cell/Cell.yaml +++ b/openapi/v1/schemas/cell/Cell.yaml @@ -1,33 +0,0 @@ -type: object -#schema is not described because of dynamic attributes' limited support in openapi-generator -description: |+ - Cell object having required, optional and dynamic attributes. - - **Required:** - - `cellId`: string - unique cell identifier, which consists of a cell group accession and a cell barcode, separated by a hyphen, e.g. `GSF123456-AAACCTGAGCGCTCCA-1`. - - `barcode`: string - raw barcode of the cell, e.g. `AAACCTGAGCGCTCCA-1`. - - `batch`: string - identifier of an origin object, such as a sample or a library, that this cell belongs to, e.g. `SAMPLE_001`. - - **Optional:** - - `cellType`: string - inferred or annotated type, e.g. `T cell`. - - `cluster`: string - clustering labels, e.g. `leiden_res1`. - - `nCounts`: integer - total UMI count (Unique Molecular Identifier), e.g. `1250`. - - `percentMito`: number - percentage of mitochondrial gene expression, e.g. `5.2`. - - `umap`: array of two or three numbers - dimensionality reduction results (Uniform Manifold Approximation and Projection), e.g. `[1.23, 0.45]`. - - `pca`: array of between 2 and 100 numbers - dimensionality reduction results (Principal Component Analysis results), e.g. `[0.12, 0.34]`. - - `tsne`: array of two or three numbers - dimensionality reduction results (t-distributed Stochastic Neighbor Embedding), e.g. `[1.23, 0.45]`. - - **Dynamic:** - - Any additional attributes in a form of key-value pairs, which can vary between different cell objects. -example: - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" - barcode: "AAACCTGAGCGCTCCA-1" - batch: "SAMPLE_001" - cellType: "T cell" - cluster: "leiden_res1" - nCounts: 1250 - percentMito: 5.2 - umap: [1.23, 0.45] - pca: [0.12, 0.34] - tsne: [1.23, 0.45] - assay_custom: "10x 3' v2" diff --git a/openapi/v1/schemas/cell/CellListResponse.yaml b/openapi/v1/schemas/cell/CellListResponse.yaml index 996e840e..e69de29b 100644 --- a/openapi/v1/schemas/cell/CellListResponse.yaml +++ b/openapi/v1/schemas/cell/CellListResponse.yaml @@ -1,34 +0,0 @@ -type: object -properties: - data: - items: - $ref: "#/components/schemas/Cell" - type: array - cursor: - type: string -components: - schemas: - Cell: - $ref: "./Cell.yaml" -example: - cursor: "GSF123456-AAAGATGGTTCCTCCA-1" - data: - - cellId: "GSF123456-AAACCTGAGCGCTCCA-1" - barcode: "AAACCTGAGCGCTCCA-1" - batch: "SAMPLE_001" - cellType: "T cell" - cluster: "leiden_res1" - nCounts: 1250 - percentMito: 5.2 - umap: [1.23, 0.45] - pca: [0.12, 0.34] - tsne: [1.23, 0.45] - assay_custom: "10x 3' v2" - - cellId: "GSF222333-AAAGATGGTTCCTCCA-1" - barcode: "AAAGATGGTTCCTCCA-1" - batch: "SAMPLE_001" - cellType: "naive B cell" - nCounts: 340 - pca: [0.2, 2.8] - primary_custom: "True" - tissue_custom: "blood" diff --git a/openapi/v1/schemas/cell/DERequest.yaml b/openapi/v1/schemas/cell/DERequest.yaml index f63bb125..e69de29b 100644 --- a/openapi/v1/schemas/cell/DERequest.yaml +++ b/openapi/v1/schemas/cell/DERequest.yaml @@ -1,22 +0,0 @@ -type: object -properties: - caseGroup: - $ref: 'CellGroupRequest.yaml' - controlGroup: - $ref: 'CellGroupRequest.yaml' - exQuery: - type: string - example: 'feature=ENSG00000230368,ENSG00000188976' - limit: - type: integer - format: int32 - description: This parameter determines the number of results to retrieve per page, with the default set at 2000. - example: 2000 - offset: - type: integer - format: int32 - description: This parameter allows skipping a specified number of results, with the default set at 0. - example: 0 -required: - - caseGroup - - controlGroup diff --git a/openapi/v1/schemas/cell/DEResponse.yaml b/openapi/v1/schemas/cell/DEResponse.yaml index c8dc108d..e69de29b 100644 --- a/openapi/v1/schemas/cell/DEResponse.yaml +++ b/openapi/v1/schemas/cell/DEResponse.yaml @@ -1,97 +0,0 @@ -type: object -properties: - resultsPerGene: - type: array - items: - $ref: '#/components/schemas/GeneEntry' - pagination: - $ref: '#/components/schemas/Pagination' -required: - - resultsPerGene - - pagination -components: - schemas: - GeneEntry: - type: object - # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. - properties: - geneId: - type: string - description: Gene identifier. - example: ENSG00000230368 - caseCellCount: - type: integer - description: Number of cells expressing the gene in the case group. - example: 8450 - controlCellCount: - type: integer - description: Number of cells expressing the gene in the control group. - example: 8123 - caseAvgEx: - type: number - format: double - description: Mean expression level across case cells. - example: 1.24 - controlAvgEx: - type: number - format: double - description: Mean expression level across control cells. - example: 0.62 - exDifference: - type: number - format: double - description: Numerical difference between average expressions. - example: 0.62 - foldChange: - type: number - format: double - description: Ratio of average expressions between case and control groups. - example: 2.0 - log2FC: - type: number - format: double - description: Logarithm with base 2 of the Fold change value. - example: 1.4594316186372973 - mannWhitneyU: - type: number - format: double - description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. - example: 1.5 - pValue: - type: number - format: double - description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - example: 0.5536169919657803 - required: - - geneId - - caseCellCount - - controlCellCount - - caseAvgEx - - controlAvgEx - - exDifference - - foldChange - - log2FC - - mannWhitneyU - - pValue - Pagination: - type: object - properties: - currentResultsCount: - type: integer - format: int32 - description: Number of results returned in the current response. - example: 1 - limit: - type: integer - format: int32 - description: Results limit, used in the request. - example: 2000 - offset: - type: integer - format: int32 - description: Results offset, used in the request. - example: 0 - required: - - currentResultsCount - - limit - - offset diff --git a/openapi/v1/schemas/cell/GSRequest.yaml b/openapi/v1/schemas/cell/GSRequest.yaml index f771f156..e69de29b 100644 --- a/openapi/v1/schemas/cell/GSRequest.yaml +++ b/openapi/v1/schemas/cell/GSRequest.yaml @@ -1,17 +0,0 @@ -type: object -properties: - cellGroup: - $ref: 'CellGroupRequest.yaml' - geneNames: - type: array - items: - type: string - example: - - "ENSG00000230368" - - "ENSG00000188976" - - "ENSG00000188982" - exQuery: - type: string - example: '-3 < value < 3' -required: - - geneNames diff --git a/openapi/v1/schemas/cell/GSResponse.yaml b/openapi/v1/schemas/cell/GSResponse.yaml index 6c91f9e0..e69de29b 100644 --- a/openapi/v1/schemas/cell/GSResponse.yaml +++ b/openapi/v1/schemas/cell/GSResponse.yaml @@ -1,68 +0,0 @@ -type: object -properties: - resultsPerGene: - type: array - items: - $ref: '#/components/schemas/GeneSummaryEntry' -components: - schemas: - GeneSummaryEntry: - type: object - description: Per-gene summary statistics. - properties: - geneId: - type: string - description: Gene identifier. - example: "ENSG00000111640" - cellCount: - type: integer - format: int32 - description: Number of cells expressing the gene. - example: 8968167 - mean: - type: number - format: double - description: Mean expression - example: 7.747614311820911 - median: - type: number - format: double - description: Median expression - example: 7 - stdDev: - type: number - format: double - description: Standard deviation - example: 6.499314669429827 - min: - type: number - format: double - description: Minimum value - example: 1 - max: - type: number - format: double - description: Maximum value - example: 496 - quantiles: - type: array - description: | - List of quantile values from 0 to 1 (inclusive), with step 0.1 - example: | - [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] - items: - type: number - format: double - histogram: - type: array - description: | - Histogram as a list of [binStart, binEnd, count] triples. - Length depends of the selected sample size, maximum is 20. - example: | - [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), - (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] - items: - type: array - items: - type: number - format: double diff --git a/openapi/v1/schemas/common/AccessionResponse.yaml b/openapi/v1/schemas/common/AccessionResponse.yaml index 7abf8406..e69de29b 100644 --- a/openapi/v1/schemas/common/AccessionResponse.yaml +++ b/openapi/v1/schemas/common/AccessionResponse.yaml @@ -1,8 +0,0 @@ -example: - genestack:accession: genestack:accession -properties: - genestack:accession: - type: string -required: - - genestack:accession -type: object diff --git a/openapi/v1/schemas/common/CommitInfo.yaml b/openapi/v1/schemas/common/CommitInfo.yaml index be5effd4..e69de29b 100644 --- a/openapi/v1/schemas/common/CommitInfo.yaml +++ b/openapi/v1/schemas/common/CommitInfo.yaml @@ -1,17 +0,0 @@ -example: - author: author - message: message - version: version - timestamp: 0 -properties: - author: - type: string - message: - type: string - timestamp: - format: int64 - type: integer - version: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/common/IntegrationHelper.yaml b/openapi/v1/schemas/common/IntegrationHelper.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/IntegrationHelper.yaml +++ b/openapi/v1/schemas/common/IntegrationHelper.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/common/ListResponse.yaml b/openapi/v1/schemas/common/ListResponse.yaml index 3a8080f8..e69de29b 100644 --- a/openapi/v1/schemas/common/ListResponse.yaml +++ b/openapi/v1/schemas/common/ListResponse.yaml @@ -1,23 +0,0 @@ -example: - data: - - {} - - {} - meta: - pagination: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - meta: - $ref: "#/components/schemas/MetaResponse" - data: - items: - properties: {} - type: object - type: array -type: object -components: - schemas: - MetaResponse: - $ref: "./MetaResponse.yaml" diff --git a/openapi/v1/schemas/common/MetaResponse.yaml b/openapi/v1/schemas/common/MetaResponse.yaml index b9ab8285..e69de29b 100644 --- a/openapi/v1/schemas/common/MetaResponse.yaml +++ b/openapi/v1/schemas/common/MetaResponse.yaml @@ -1,14 +0,0 @@ -example: - pagination: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - pagination: - $ref: "#/components/schemas/PaginationInfo" -type: object -components: - schemas: - PaginationInfo: - $ref: "./PaginationInfo.yaml" diff --git a/openapi/v1/schemas/common/MetadataContent.yaml b/openapi/v1/schemas/common/MetadataContent.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/MetadataContent.yaml +++ b/openapi/v1/schemas/common/MetadataContent.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/common/MetadataWithId.yaml b/openapi/v1/schemas/common/MetadataWithId.yaml index abe5d5d2..e69de29b 100644 --- a/openapi/v1/schemas/common/MetadataWithId.yaml +++ b/openapi/v1/schemas/common/MetadataWithId.yaml @@ -1,10 +0,0 @@ -example: - itemId: itemId - metadata: {} -properties: - itemId: - readOnly: true - type: string - metadata: - type: object -type: object diff --git a/openapi/v1/schemas/common/PaginationInfo.yaml b/openapi/v1/schemas/common/PaginationInfo.yaml index ccad66b8..e69de29b 100644 --- a/openapi/v1/schemas/common/PaginationInfo.yaml +++ b/openapi/v1/schemas/common/PaginationInfo.yaml @@ -1,19 +0,0 @@ -example: - total: 6 - offset: 1 - count: 0 - limit: 5 -properties: - count: - format: int32 - type: integer - total: - format: int64 - type: integer - offset: - format: int32 - type: integer - limit: - format: int32 - type: integer -type: object diff --git a/openapi/v1/schemas/common/ResponseFormat.yaml b/openapi/v1/schemas/common/ResponseFormat.yaml index 92d05d15..e69de29b 100644 --- a/openapi/v1/schemas/common/ResponseFormat.yaml +++ b/openapi/v1/schemas/common/ResponseFormat.yaml @@ -1,3 +0,0 @@ -enum: - - term_id -type: string diff --git a/openapi/v1/schemas/common/RunFilter.yaml b/openapi/v1/schemas/common/RunFilter.yaml index 1971944d..e69de29b 100644 --- a/openapi/v1/schemas/common/RunFilter.yaml +++ b/openapi/v1/schemas/common/RunFilter.yaml @@ -1,4 +0,0 @@ -items: - type: string - example: runId -type: array diff --git a/openapi/v1/schemas/common/RunsResponse.yaml b/openapi/v1/schemas/common/RunsResponse.yaml index 9669ad2e..e69de29b 100644 --- a/openapi/v1/schemas/common/RunsResponse.yaml +++ b/openapi/v1/schemas/common/RunsResponse.yaml @@ -1,16 +0,0 @@ -example: - cursor: "1" - data: - - runId: "1" - sampleSourceId: "exp4-human-100well.ATATCCTACTACTTAACTAG" - - runId: "2" - sampleSourceId: "exp4-human-100well.TTACCTAAGTTTGATATATT" -properties: - cursor: - type: string - data: - items: - properties: { } - type: object - type: array -type: object diff --git a/openapi/v1/schemas/common/SignalRun.yaml b/openapi/v1/schemas/common/SignalRun.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/common/SignalRun.yaml +++ b/openapi/v1/schemas/common/SignalRun.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/expression/ExpressionItem.yaml b/openapi/v1/schemas/expression/ExpressionItem.yaml index 844ecf51..e69de29b 100644 --- a/openapi/v1/schemas/expression/ExpressionItem.yaml +++ b/openapi/v1/schemas/expression/ExpressionItem.yaml @@ -1,57 +0,0 @@ -example: - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - expression: 1.82 - feature: - genes: MYO9A, - groupingKey: VRSLGGISPSEDRR - gene: gene - description: description - value: - value: 1.82 -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - gene: - type: string - expression: - example: 1.82 - format: double - type: number - feature: - example: - genes: MYO9A, - groupingKey: VRSLGGISPSEDRR - oneOf: - - type: object - - type: string - readOnly: true - value: - example: - value: 1.82 - type: object - patternProperties: - "^.*$": - format: double - oneOf: - - type: number - - type: string # Inf or -Inf - description: - type: string - readOnly: true -type: object diff --git a/openapi/v1/schemas/expression/ExpressionResponse.yaml b/openapi/v1/schemas/expression/ExpressionResponse.yaml index ec96fd1e..e69de29b 100644 --- a/openapi/v1/schemas/expression/ExpressionResponse.yaml +++ b/openapi/v1/schemas/expression/ExpressionResponse.yaml @@ -1,37 +0,0 @@ -example: - cursor: cursor - data: - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - gene: gene - feature: feature - expression: 1.82 - value: - value: 1.82 - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - gene: gene - feature: feature - expression: 1.82 - value: - value: 1.82 -properties: - data: - items: - $ref: "#/components/schemas/ExpressionItem" - type: array - cursor: - type: string -type: object -components: - schemas: - ExpressionItem: - $ref: "./ExpressionItem.yaml" diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml index b6448c68..e69de29b 100644 --- a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml +++ b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml @@ -1,43 +0,0 @@ -example: - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 - runId: runId -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - feature: - type: object - properties: - readoutType: - type: string - cellPopulation: - type: string - marker: - type: string - value: - type: object - properties: - value: - type: number -type: object diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml index 696aceb5..e69de29b 100644 --- a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml +++ b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml @@ -1,39 +0,0 @@ -example: - cursor: cursor - data: - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 - - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - feature: - readoutType: readoutType - cellPopulation: cellPopulation - marker: marker - value: - value: 0.8008281904610115 -properties: - data: - items: - $ref: "#/components/schemas/FlowCytometryItem" - type: array - cursor: - type: string -type: object -components: - schemas: - FlowCytometryItem: - $ref: "./FlowCytometryItem.yaml" diff --git a/openapi/v1/schemas/integration/AppliedFilter.yaml b/openapi/v1/schemas/integration/AppliedFilter.yaml index cd300f3f..e69de29b 100644 --- a/openapi/v1/schemas/integration/AppliedFilter.yaml +++ b/openapi/v1/schemas/integration/AppliedFilter.yaml @@ -1,16 +0,0 @@ -properties: - type: - enum: - - FULL_TEXT - - SELECT - type: string - filterOptionId: - type: string - match: - type: string - mode: - enum: - - STRICT - - USE_NARROWER_TERMS - type: string -type: object diff --git a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml index eb4ccb77..e69de29b 100644 --- a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml +++ b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml @@ -1,26 +0,0 @@ -example: - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - value: - oneOf: - - properties: {} - type: object - - type: string - count: - format: int64 - type: integer - errors: - items: - $ref: "#/components/schemas/ValidationError" - type: array -type: object -components: - schemas: - ValidationError: - $ref: "./ValidationError.yaml" diff --git a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml index 5291f307..e69de29b 100644 --- a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml +++ b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml @@ -1,29 +0,0 @@ -example: - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - attributeName: - type: string - attributeInvalidValues: - items: - $ref: "#/components/schemas/AttributeInvalidValue" - type: array -type: object -components: - schemas: - AttributeInvalidValue: - $ref: "./AttributeInvalidValue.yaml" diff --git a/openapi/v1/schemas/integration/BatchOfIds.yaml b/openapi/v1/schemas/integration/BatchOfIds.yaml index e8b2f386..e69de29b 100644 --- a/openapi/v1/schemas/integration/BatchOfIds.yaml +++ b/openapi/v1/schemas/integration/BatchOfIds.yaml @@ -1,32 +0,0 @@ -description: Request model for getting links by many IDs. -example: - firstType: study - firstIds: - - firstIds - - firstIds - offset: 0 - limit: 0 -properties: - firstType: - description: Type of the objects. - example: study - type: string - firstIds: - description: Array of the object IDs with the same type. - items: - type: string - type: array - uniqueItems: true - offset: - description: 'Param says to skip that many links before beginning to return links. - Default: 0.' - format: int32 - type: integer - limit: - description: 'Param says to limit the count of returned links. Default: 1000.' - format: int32 - type: integer -required: -- firstIds -- firstType -type: object diff --git a/openapi/v1/schemas/integration/DataItem.yaml b/openapi/v1/schemas/integration/DataItem.yaml index 1c4590cb..e69de29b 100644 --- a/openapi/v1/schemas/integration/DataItem.yaml +++ b/openapi/v1/schemas/integration/DataItem.yaml @@ -1,6 +0,0 @@ -properties: - itemId: - type: string - metadata: - type: object -type: object diff --git a/openapi/v1/schemas/integration/DataPresentation.yaml b/openapi/v1/schemas/integration/DataPresentation.yaml index 45ccfc56..e69de29b 100644 --- a/openapi/v1/schemas/integration/DataPresentation.yaml +++ b/openapi/v1/schemas/integration/DataPresentation.yaml @@ -1,13 +0,0 @@ -properties: - itemId: - readOnly: true - type: string - metadata: - type: object - relationships: - $ref: "#/components/schemas/Relationships" -type: object -components: - schemas: - Relationships: - $ref: "./Relationships.yaml" diff --git a/openapi/v1/schemas/integration/FilterOption.yaml b/openapi/v1/schemas/integration/FilterOption.yaml index 96ccaea7..e69de29b 100644 --- a/openapi/v1/schemas/integration/FilterOption.yaml +++ b/openapi/v1/schemas/integration/FilterOption.yaml @@ -1,16 +0,0 @@ -example: - filterId: filterId - name: name - count: 5 - id: id -properties: - id: - type: string - filterId: - type: string - name: - type: string - count: - format: int64 - type: integer -type: object diff --git a/openapi/v1/schemas/integration/FilterOptionGroup.yaml b/openapi/v1/schemas/integration/FilterOptionGroup.yaml index 897e5a54..e69de29b 100644 --- a/openapi/v1/schemas/integration/FilterOptionGroup.yaml +++ b/openapi/v1/schemas/integration/FilterOptionGroup.yaml @@ -1,26 +0,0 @@ -example: - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id -properties: - filterId: - type: string - hasMoreOptions: - type: boolean - options: - items: - $ref: "#/components/schemas/FilterOption" - type: array -type: object -components: - schemas: - FilterOption: - $ref: "./FilterOption.yaml" diff --git a/openapi/v1/schemas/integration/FindObjectsResponse.yaml b/openapi/v1/schemas/integration/FindObjectsResponse.yaml index 679cdcaa..e69de29b 100644 --- a/openapi/v1/schemas/integration/FindObjectsResponse.yaml +++ b/openapi/v1/schemas/integration/FindObjectsResponse.yaml @@ -1,78 +0,0 @@ -example: - filterOptionGroups: - - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - hasMoreOptions: true - options: - - filterId: filterId - name: name - count: 5 - id: id - - filterId: filterId - name: name - count: 5 - id: id - objectsPage: - filteredCount: 0 - pageRequest: - offset: 6 - limit: 50 - content: - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - objectsPage: - $ref: "#/components/schemas/ObjectsPage" - filterOptionGroups: - items: - $ref: "#/components/schemas/FilterOptionGroup" - type: array -type: object -components: - schemas: - ObjectsPage: - $ref: "./ObjectsPage.yaml" - FilterOptionGroup: - $ref: "./FilterOptionGroup.yaml" diff --git a/openapi/v1/schemas/integration/GroupValidationSummary.yaml b/openapi/v1/schemas/integration/GroupValidationSummary.yaml index c3399b6c..e69de29b 100644 --- a/openapi/v1/schemas/integration/GroupValidationSummary.yaml +++ b/openapi/v1/schemas/integration/GroupValidationSummary.yaml @@ -1,47 +0,0 @@ -example: - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - groupAccession: - type: string - attributes: - items: - $ref: "#/components/schemas/AttributeValidationSummary" - type: array -type: object -components: - schemas: - AttributeValidationSummary: - $ref: "./AttributeValidationSummary.yaml" diff --git a/openapi/v1/schemas/integration/IMetadata.yaml b/openapi/v1/schemas/integration/IMetadata.yaml index abbedd84..e69de29b 100644 --- a/openapi/v1/schemas/integration/IMetadata.yaml +++ b/openapi/v1/schemas/integration/IMetadata.yaml @@ -1,21 +0,0 @@ -properties: - source: - format: uri - type: string - name: - type: string - public: - type: boolean - id: - type: string - content: - type: object - dataType: - type: string - contentMap: - type: object - metadataContent: - type: object - fileIdAssociatedWithTemplate: - type: string -type: object diff --git a/openapi/v1/schemas/integration/Link.yaml b/openapi/v1/schemas/integration/Link.yaml index f9627bb5..e69de29b 100644 --- a/openapi/v1/schemas/integration/Link.yaml +++ b/openapi/v1/schemas/integration/Link.yaml @@ -1,21 +0,0 @@ -description: Link between two objects. Each of them represented as a unique pair of - ID (accession) and unique type. -example: - firstId: firstId - firstType: firstType - secondId: secondId - secondType: secondType -properties: - firstId: - description: Object ID (accession) (e.g. accession of study) - type: string - firstType: - description: Type of the object (e.g. study) - type: string - secondId: - description: Object ID (accession) (e.g. accession of study) - type: string - secondType: - description: Type of the object (e.g. study) - type: string -type: object diff --git a/openapi/v1/schemas/integration/MetadataPresentation.yaml b/openapi/v1/schemas/integration/MetadataPresentation.yaml index bae5ce0b..e69de29b 100644 --- a/openapi/v1/schemas/integration/MetadataPresentation.yaml +++ b/openapi/v1/schemas/integration/MetadataPresentation.yaml @@ -1,20 +0,0 @@ -description: |- - A description of object metadata. - - This will contain: - - `genestack:accession`: the object ID - - `Study Title` (for studies) - - `Sample ID` (for samples) - - all other attributes defined in the linked template (if any) -properties: - metadata: - $ref: "#/components/schemas/IMetadata" - relationships: - $ref: "#/components/schemas/Relationships" -type: object -components: - schemas: - IMetadata: - $ref: "./IMetadata.yaml" - Relationships: - $ref: "./Relationships.yaml" diff --git a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml index c22abc0d..e69de29b 100644 --- a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml +++ b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml @@ -1,13 +0,0 @@ -example: - values: - - values - - values - key: key -properties: - key: - type: string - values: - items: - type: string - type: array -type: object diff --git a/openapi/v1/schemas/integration/ObjectsPage.yaml b/openapi/v1/schemas/integration/ObjectsPage.yaml index 4b95d6b4..e69de29b 100644 --- a/openapi/v1/schemas/integration/ObjectsPage.yaml +++ b/openapi/v1/schemas/integration/ObjectsPage.yaml @@ -1,57 +0,0 @@ -example: - filteredCount: 0 - pageRequest: - offset: 6 - limit: 50 - content: - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true - - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - filteredCount: - format: int64 - type: integer - pageRequest: - $ref: "#/components/schemas/PageRequest" - content: - items: - $ref: "#/components/schemas/StudySearchInfo" - type: array -type: object -components: - schemas: - PageRequest: - $ref: "./PageRequest.yaml" - StudySearchInfo: - $ref: "./StudySearchInfo.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponse.yaml b/openapi/v1/schemas/integration/OmicsResponse.yaml index 52fd3ad4..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponse.yaml +++ b/openapi/v1/schemas/integration/OmicsResponse.yaml @@ -1,24 +0,0 @@ -example: - cursor: cursor - data: - - {} - - {} - log: - - log - - log - resultsExhausted: true -properties: - data: - items: - properties: {} - type: object - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object diff --git a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml index 88dac7bb..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/DataPresentation" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - DataPresentation: - $ref: "./DataPresentation.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml index c4d2d6fd..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/MetadataPresentation" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - MetadataPresentation: - $ref: "./MetadataPresentation.yaml" diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml index cd660ef2..e69de29b 100644 --- a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml +++ b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml @@ -1,18 +0,0 @@ -properties: - data: - items: - $ref: "#/components/schemas/MetadataWithId" - type: array - resultsExhausted: - type: boolean - log: - items: - type: string - type: array - cursor: - type: string -type: object -components: - schemas: - MetadataWithId: - $ref: "../common/MetadataWithId.yaml" diff --git a/openapi/v1/schemas/integration/PageRequest.yaml b/openapi/v1/schemas/integration/PageRequest.yaml index 817d8ba8..e69de29b 100644 --- a/openapi/v1/schemas/integration/PageRequest.yaml +++ b/openapi/v1/schemas/integration/PageRequest.yaml @@ -1,15 +0,0 @@ -example: - offset: 6 - limit: 50 -properties: - offset: - description: 'Param says to skip that many links before beginning to return links. - Default: 0.' - format: int32 - type: integer - limit: - description: 'Param says to limit the count of returned links. Default: 1000.' - example: 50 - format: int32 - type: integer -type: object diff --git a/openapi/v1/schemas/integration/Relationships.yaml b/openapi/v1/schemas/integration/Relationships.yaml index bb234453..e69de29b 100644 --- a/openapi/v1/schemas/integration/Relationships.yaml +++ b/openapi/v1/schemas/integration/Relationships.yaml @@ -1,14 +0,0 @@ -properties: - sample: - readOnly: true - type: string - cell: - readOnly: true - type: string - library: - readOnly: true - type: string - preparation: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/integration/SearchStudyRequest.yaml b/openapi/v1/schemas/integration/SearchStudyRequest.yaml index d2cd3724..e69de29b 100644 --- a/openapi/v1/schemas/integration/SearchStudyRequest.yaml +++ b/openapi/v1/schemas/integration/SearchStudyRequest.yaml @@ -1,30 +0,0 @@ -example: - filters: - - type: FULL_TEXT - match: text_to_search - mode: STRICT - - type: SELECT - filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP - page: - offset: 6 - limit: 50 -properties: - filters: - example: - - type: FULL_TEXT - match: text_to_search - mode: STRICT - - type: SELECT - filterOptionId: TUVUQURBVEFfU3R1ZHlfU291cmNlOlRlc3QgR0VP - items: - $ref: "#/components/schemas/AppliedFilter" - type: array - page: - $ref: "#/components/schemas/PageRequest" -type: object -components: - schemas: - AppliedFilter: - $ref: "./AppliedFilter.yaml" - PageRequest: - $ref: "./PageRequest.yaml" diff --git a/openapi/v1/schemas/integration/SourceTypePair.yaml b/openapi/v1/schemas/integration/SourceTypePair.yaml index 82e199f3..e69de29b 100644 --- a/openapi/v1/schemas/integration/SourceTypePair.yaml +++ b/openapi/v1/schemas/integration/SourceTypePair.yaml @@ -1,13 +0,0 @@ -example: - firstType: firstType - secondType: secondType -properties: - firstType: - description: Type of the object (e.g. study) - readOnly: true - type: string - secondType: - description: Type of the object (e.g. study) - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/integration/StreamingOutput.yaml b/openapi/v1/schemas/integration/StreamingOutput.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/integration/StreamingOutput.yaml +++ b/openapi/v1/schemas/integration/StreamingOutput.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/integration/StudySearchInfo.yaml b/openapi/v1/schemas/integration/StudySearchInfo.yaml index 9b8d9e2d..e69de29b 100644 --- a/openapi/v1/schemas/integration/StudySearchInfo.yaml +++ b/openapi/v1/schemas/integration/StudySearchInfo.yaml @@ -1,46 +0,0 @@ -example: - owner: owner - summary: - - values: - - values - - values - key: key - - values: - - values - - values - key: key - hasFacs: true - hasTranscriptomics: true - size: 1 - fileCreation: fileCreation - name: name - accession: accession - hasGenomic: true -properties: - accession: - type: string - name: - type: string - owner: - type: string - fileCreation: - format: int64 - type: string - size: - format: int64 - type: integer - hasFacs: - type: boolean - hasGenomic: - type: boolean - hasTranscriptomics: - type: boolean - summary: - items: - $ref: "#/components/schemas/MetainfoKeyForSummary" - type: array -type: object -components: - schemas: - MetainfoKeyForSummary: - $ref: "./MetainfoKeyForSummary.yaml" diff --git a/openapi/v1/schemas/integration/StudyValidationSummary.yaml b/openapi/v1/schemas/integration/StudyValidationSummary.yaml index 49c83492..e69de29b 100644 --- a/openapi/v1/schemas/integration/StudyValidationSummary.yaml +++ b/openapi/v1/schemas/integration/StudyValidationSummary.yaml @@ -1,80 +0,0 @@ -example: - samples: - - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - groupAccession: groupAccession - attributes: - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - attributeName: attributeName - attributeInvalidValues: - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - count: 0 - value: {} - errors: - - errorType: VALUE_NOT_SET - errorMessage: errorMessage - - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - samples: - items: - $ref: "#/components/schemas/GroupValidationSummary" - type: array -type: object -components: - schemas: - GroupValidationSummary: - $ref: "./GroupValidationSummary.yaml" diff --git a/openapi/v1/schemas/integration/ValidationError.yaml b/openapi/v1/schemas/integration/ValidationError.yaml index 6ce7c01e..e69de29b 100644 --- a/openapi/v1/schemas/integration/ValidationError.yaml +++ b/openapi/v1/schemas/integration/ValidationError.yaml @@ -1,15 +0,0 @@ -example: - errorType: VALUE_NOT_SET - errorMessage: errorMessage -properties: - errorType: - enum: - - VALUE_NOT_SET - - VOCABULARY_NOT_FOUND - - TYPE_NOT_MATCH - - MISSING_ATTRIBUTE - - SYNONYM_ATTRIBUTE - type: string - errorMessage: - type: string -type: object diff --git a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml index 916133dd..e69de29b 100644 --- a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml +++ b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml @@ -1,9 +0,0 @@ -example: - type: type - message: message -properties: - type: - type: string - message: - type: string -type: object diff --git a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml index e4b4dce5..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml @@ -1,28 +0,0 @@ -properties: - metadata: - type: string - format: binary - description: The metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. - data: - type: string - format: binary - description: A file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. - studyAccession: - example: GSF334953 - type: string - description: An accession of a study the file will be associated with. - dataClass: - example: Proteomics - type: string - description: A mandatory parameter with the value from a limited set of values (see request description). -required: -- data -- studyAccession -- dataClass -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportAFileRequest.yaml b/openapi/v1/schemas/job/ImportAFileRequest.yaml index eb4ec551..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportAFileRequest.yaml +++ b/openapi/v1/schemas/job/ImportAFileRequest.yaml @@ -1,34 +0,0 @@ -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf - studyAccession: GSF334953 - dataClass: Proteomics -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - type: string - description: Specifies the URL of a metadata file to be used as the original metadata for the created objects. The file must contain a single record describing the uploaded attachment. - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object.pdf - type: string - description: Specifies a link to a file to import as an attachment. The file will be associated with a study and will be searchable by its name and metadata. - studyAccession: - example: GSF334953 - type: string - dataClass: - example: Proteomics - type: string - description: A mandatory parameter with the value from a limited set of values (see request description). -required: -- dataLink -- studyAccession -- dataClass -type: object diff --git a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml index 4e3f04e0..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml @@ -1,18 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - data: - type: string - format: binary -required: - - studyId - - data -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportCellsRequest.yaml b/openapi/v1/schemas/job/ImportCellsRequest.yaml index c854b4a6..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportCellsRequest.yaml +++ b/openapi/v1/schemas/job/ImportCellsRequest.yaml @@ -1,9 +0,0 @@ -example: - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv -properties: - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/cells.tsv - type: string -required: -- dataLink -type: object diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml index 564d94ca..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml @@ -1,34 +0,0 @@ -allOf: -- $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" -properties: - numberOfFeatureAttributes: - description: Integer value that specifies the number of columns related to the - feature in the uploaded data frame, and indicates the starting position of the - sample data. This attribute is not needed if the uploaded file is in GCT format. - example: 5 - type: integer - dataClass: - description: "A mandatory parameter with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, `Microbiome / Metagenomics`, - `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, - `Document`, `Other`. \nIn case the parameter is not set - the dataClass is automatically defined as `Other`." - example: Proteomics - type: string - measurementSeparator: - description: 'This parameter is necessary when your file contains multiple measurement - columns for each sample, library, or preparation. It represents the character - that distinguishes the sample/library/preparation name from the measurement - name in column headers. Supported separators include `. , : ; _ - / \ |`, with - the allowance for multi-character separators.' - example: ':' - type: string -components: - schemas: - ImportSignalRunFomMultipartRequest: - $ref: "./ImportSignalRunFomMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml index 01bd04fc..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml +++ b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml @@ -1,42 +0,0 @@ -allOf: -- $ref: "#/components/schemas/ImportSignalRunRequest" -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - templateId: GSF334953 - previousVersion: GSF334953 - numberOfFeatureAttributes: 5 - dataClass: Proteomics - measurementSeparator: ':' -properties: - numberOfFeatureAttributes: - description: Integer value that specifies the number of columns related to the - feature in the uploaded data frame, and indicates the starting position of the - sample data. This attribute is not needed if the uploaded file is in GCT format. - example: 5 - type: integer - dataClass: - description: "A mandatory parameter with the following possible values: `Bulk - transcriptomics`, `Single-cell transcriptomics`, `Differential abundance (FC, - pval, etc.)`, `Pathway analysis`, `Proteomics`, `Single-cell proteomics`, `Metabolomics`, - `Lipidomics`, `Epigenomics`, `DNA methylation`, `Chemoinformatics`, `Imaging features`, - `Gene panel data`, `Biomarker data`, `Physical measures`, `Blood counts`, `Other body - fluid counts`, `Long-read sequencing (Nanopore, PacBio)`, `Flow Cytometry (FCS)`, - `Spatial transcriptomics`, `Phenomics`, `Copy number alterations`, - `Microbiome / Metagenomics`, `Immune repertoire`, `Genetic screens (CRISPR / RNAi)`, `Cell imaging`, - `Document`, `Other`. \nIn case the parameter is not set - the dataClass is automatically defined as `Other`." - example: Proteomics - type: string - measurementSeparator: - description: 'This parameter is necessary when your file contains multiple measurement - columns for each sample, library, or preparation. It represents the character - that distinguishes the sample/library/preparation name from the measurement - name in column headers. Supported separators include `. , : ; _ - / \ |`, with - the allowance for multi-character separators.' - example: ':' - type: string -components: - schemas: - ImportSignalRunRequest: - $ref: "./ImportSignalRunRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml index a142f891..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml @@ -1,21 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - templateId: - example: GSF334953 - type: string - metadata: - type: string - format: binary -required: - - studyId - - metadata -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportMetadataRequest.yaml b/openapi/v1/schemas/job/ImportMetadataRequest.yaml index d600e38a..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportMetadataRequest.yaml +++ b/openapi/v1/schemas/job/ImportMetadataRequest.yaml @@ -1,21 +0,0 @@ -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - templateId: GSF334953 -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv - type: string - templateId: - example: GSF334953 - type: string -required: -- metadataLink -type: object diff --git a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml index 43f4d419..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml +++ b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml @@ -1,27 +0,0 @@ -properties: - studyId: - type: string - example: GSF1234567 - description: The ID (accession) of the study for organising files in the internal storage; linking to the target entity must be done through a separate endpoint. - metadata: - type: string - format: binary - data: - type: string - format: binary - templateId: - example: GSF334953 - type: string - previousVersion: - example: GSF334953 - type: string -required: - - studyId - - data -type: object -allOf: - - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" -components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" diff --git a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml index 9c4194a0..e69de29b 100644 --- a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml +++ b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml @@ -1,30 +0,0 @@ -description: import signal data request -example: - metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - dataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - templateId: GSF334953 - previousVersion: GSF334953 -properties: - source: - enum: - - S3 - - HTTP - - LOCAL - example: HTTP - type: string - description: The source parameter is ignored and will be removed in version 1.61. The source is automatically extracted from the link - metadataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-metadata.tsv - type: string - dataLink: - example: https://mybucket.s3.amazonaws.com/my-experiment/my-omics-data.gz - type: string - templateId: - example: GSF334953 - type: string - previousVersion: - example: GSF334953 - type: string -required: -- dataLink -type: object diff --git a/openapi/v1/schemas/job/Info.yaml b/openapi/v1/schemas/job/Info.yaml index cfd3af82..e69de29b 100644 --- a/openapi/v1/schemas/job/Info.yaml +++ b/openapi/v1/schemas/job/Info.yaml @@ -1,48 +0,0 @@ -description: job execution information -example: - jobName: Protein folding - startedBy: job@genestack.com - createTime: 2000-01-23T04:56:07+00:00 - jobExecId: 12345 - endTime: 2000-01-23T04:56:07+00:00 - status: STARTED -properties: - jobExecId: - description: job execution id - example: 12345 - format: int64 - type: integer - startedBy: - description: user name who started the job - example: job@genestack.com - type: string - jobName: - description: actual job name - example: Protein folding - type: string - status: - description: current job status - enum: - - COMPLETED - - STARTING - - RUNNING - - STOPPING - - STOPPED - - FAILED - - ABANDONED - - UNKNOWN - example: STARTED - type: string - createTime: - format: date-time - type: string - endTime: - format: date-time - type: string -required: -- createTime -- jobExecId -- jobName -- startedBy -- status -type: object diff --git a/openapi/v1/schemas/job/JobRuntimeError.yaml b/openapi/v1/schemas/job/JobRuntimeError.yaml index fc3b0436..e69de29b 100644 --- a/openapi/v1/schemas/job/JobRuntimeError.yaml +++ b/openapi/v1/schemas/job/JobRuntimeError.yaml @@ -1,19 +0,0 @@ -example: - stack: - - type: type - message: message - - type: type - message: message - stage: stage -properties: - stage: - type: string - stack: - items: - $ref: "#/components/schemas/ExceptionTypeAndMessage" - type: array -type: object -components: - schemas: - ExceptionTypeAndMessage: - $ref: "./ExceptionTypeAndMessage.yaml" diff --git a/openapi/v1/schemas/job/Output.yaml b/openapi/v1/schemas/job/Output.yaml index f4a6601c..e69de29b 100644 --- a/openapi/v1/schemas/job/Output.yaml +++ b/openapi/v1/schemas/job/Output.yaml @@ -1,48 +0,0 @@ -description: job execution output -example: - result: {} - errors: - - stack: - - type: type - message: message - - type: type - message: message - stage: stage - - stack: - - type: type - message: message - - type: type - message: message - stage: stage - status: COMPLETED -properties: - status: - description: current job status - enum: - - COMPLETED - - STARTING - - RUNNING - - STOPPING - - STOPPED - - FAILED - - ABANDONED - - UNKNOWN - example: COMPLETED - type: string - result: - description: job result object (available if job completed successfully) - properties: {} - type: object - errors: - description: array of errors occurred during execution of the job (available if - job failed) - items: - $ref: "#/components/schemas/JobRuntimeError" - type: array -required: -- status -type: object -components: - schemas: - JobRuntimeError: - $ref: "./JobRuntimeError.yaml" diff --git a/openapi/v1/schemas/library/Library.yaml b/openapi/v1/schemas/library/Library.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/library/Library.yaml +++ b/openapi/v1/schemas/library/Library.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/manage-data/DetachedCollection.yaml b/openapi/v1/schemas/manage-data/DetachedCollection.yaml index 55bd2a9a..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/DetachedCollection.yaml +++ b/openapi/v1/schemas/manage-data/DetachedCollection.yaml @@ -1,25 +0,0 @@ -example: - cursor: cursor - data: - - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail - - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail -properties: - data: - items: - $ref: "#/components/schemas/DetachedObject" - type: array - cursor: - type: string -required: -- data -type: object -components: - schemas: - DetachedObject: - $ref: "./DetachedObject.yaml" diff --git a/openapi/v1/schemas/manage-data/DetachedObject.yaml b/openapi/v1/schemas/manage-data/DetachedObject.yaml index 99b1c1fc..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/DetachedObject.yaml +++ b/openapi/v1/schemas/manage-data/DetachedObject.yaml @@ -1,30 +0,0 @@ -example: - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - detachedObjectType: SAMPLE_GROUP - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - detachedObjectType: - enum: - - STUDY - - SAMPLE_GROUP - - LIBRARY_GROUP - - PREPARATION_GROUP - - CELL_GROUP - - TABULAR_DATA - - GENE_VARIANT - - FLOW_CYTOMETRY - type: string - ownerEmail: - type: string - createdAt: - format: date-time - type: string -required: -- createdAt -- detachedObjectType -- genestack:accession -- ownerEmail -type: object diff --git a/openapi/v1/schemas/manage-data/ManagedObject.yaml b/openapi/v1/schemas/manage-data/ManagedObject.yaml index 602b67fb..e69de29b 100644 --- a/openapi/v1/schemas/manage-data/ManagedObject.yaml +++ b/openapi/v1/schemas/manage-data/ManagedObject.yaml @@ -1,21 +0,0 @@ -example: - createdAt: 2000-01-23T04:56:07+00:00 - genestack:accession: genestack:accession - objectType: objectType - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - objectType: - type: string - ownerEmail: - type: string - createdAt: - format: date-time - type: string -required: -- createdAt -- genestack:accession -- objectType -- ownerEmail -type: object diff --git a/openapi/v1/schemas/preparation/Preparation.yaml b/openapi/v1/schemas/preparation/Preparation.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/preparation/Preparation.yaml +++ b/openapi/v1/schemas/preparation/Preparation.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml index 093b0e72..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml @@ -1,26 +0,0 @@ -description: Create XrefSet request body -example: - metadata: - key: metadata - xrefSetType: gene-transcript - dataLink: '"http://example-url.com/my-mapping.tsv"' -properties: - xrefSetType: - description: Type of data stored in XrefSet - enum: - - gene-transcript - type: string - dataLink: - description: Mapping file link - example: '"http://example-url.com/my-mapping.tsv"' - type: string - metadata: - patternProperties: - "^.*$": - type: string - description: Additional user metadata - type: object -required: -- dataLink -- xrefSetType -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml index 34aed5f4..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml @@ -1,56 +0,0 @@ -description: Create XrefSet response body -example: - lastUpdated: 1602838500612 - metadata: - key: metadata - createdDate: 1602838500612 - createdBy: '"User007"' - warnings: - - warnings - - warnings - xrefSetType: gene-transcript - xrefSetId: '"GSF0000013"' -properties: - xrefSetId: - description: Accession of the created XrefSet - example: '"GSF0000013"' - type: string - createdBy: - description: Name of the user created XrefSet - example: '"User007"' - type: string - createdDate: - description: Date of XrefSet creation - example: 1602838500612 - format: int64 - type: integer - lastUpdated: - description: Date of XrefSet last update. For a new entity lastUpdated = createdDate - example: 1602838500612 - format: int64 - type: integer - xrefSetType: - description: Type of data stored in XrefSet - enum: - - gene-transcript - type: string - metadata: - patternProperties: - "^.*$": - type: string - description: Additional user metadata - type: object - warnings: - description: Warnings, if any - items: - type: string - type: array -required: -- createdBy -- createdDate -- lastUpdated -- metadata -- warnings -- xrefSetId -- xrefSetType -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml index 340e7627..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml @@ -1,29 +0,0 @@ -description: Xrefset metadata -example: - lastUpdated: 1594846270242 - createdDate: 1594846270242 - data: - key: data - createdBy: '"Genestack Superuser"' - xrefSetId: '"GSF000477"' -properties: - xrefSetId: - example: '"GSF000477"' - type: string - createdBy: - example: '"Genestack Superuser"' - type: string - createdDate: - example: 1594846270242 - format: int64 - type: integer - lastUpdated: - example: 1594846270242 - format: int64 - type: integer - data: - patternProperties: - "^.*$": - type: string - type: object -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml index 085a1607..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml @@ -1,19 +0,0 @@ -description: Result of a search query for xrefsets -example: - cursor: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' - result: - - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' - - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' -properties: - cursor: - example: '"GSF0000013#ENSG00000231103.2#ENST00000617423.4"' - type: string - result: - items: - $ref: "XrefSetSearchResultEntry.yaml" - type: array -type: object diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml index a20a604c..e69de29b 100644 --- a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml +++ b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml @@ -1,17 +0,0 @@ -example: - sourceId: '"ENSG00000231103.2"' - targetIds: '["ENST00000617423.4", "ENST00000334232.8"]' - xrefSetId: '"GSF0000013"' -properties: - xrefSetId: - example: '"GSF0000013"' - type: string - sourceId: - example: '"ENSG00000231103.2"' - type: string - targetIds: - example: '["ENST00000617423.4", "ENST00000334232.8"]' - items: - type: string - type: array -type: object diff --git a/openapi/v1/schemas/reference-genome/RGItem.yaml b/openapi/v1/schemas/reference-genome/RGItem.yaml index 53af5e3b..e69de29b 100644 --- a/openapi/v1/schemas/reference-genome/RGItem.yaml +++ b/openapi/v1/schemas/reference-genome/RGItem.yaml @@ -1,31 +0,0 @@ -example: - genestack:accession: GSF000009 - annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz - organism: Homo sapiens - assembly: GRCh38 - release: 112 - name: Homo sapiens reference genome GRCh38.112 - initializationStatus: Complete - createdAt: 2000-01-23T04:56:070Z - ownerEmail: ownerEmail -properties: - genestack:accession: - type: string - annotationUrl: - type: string - format: uri - organism: - type: string - assembly: - type: string - release: - type: string - name: - type: string - initializationStatus: - type: string - createdAt: - type: string - ownerEmail: - type: string -type: object diff --git a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml index 6f624ad6..e69de29b 100644 --- a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml +++ b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml @@ -1,23 +0,0 @@ -example: - annotationUrl: https://ftp.ensembl.org/pub/release-112/gtf/homo_sapiens/Homo_sapiens.GRCh38.112.gtf.gz - organism: Homo sapiens - assembly: GRCh38 - release: "112" - name: Homo sapiens reference genome GRCh38.112 -properties: - annotationUrl: - type: string - format: uri - organism: - type: string - assembly: - type: string - release: - type: string - name: - type: string -required: -- organism -- assembly -- release -type: object diff --git a/openapi/v1/schemas/sample/Sample.yaml b/openapi/v1/schemas/sample/Sample.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/sample/Sample.yaml +++ b/openapi/v1/schemas/sample/Sample.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/scim/BaseErrorResponse.yaml b/openapi/v1/schemas/scim/BaseErrorResponse.yaml index b095cc65..e69de29b 100644 --- a/openapi/v1/schemas/scim/BaseErrorResponse.yaml +++ b/openapi/v1/schemas/scim/BaseErrorResponse.yaml @@ -1,10 +0,0 @@ -properties: - error: - $ref: "#/components/schemas/ErrorMessage" -required: -- error -type: object -components: - schemas: - ErrorMessage: - $ref: "./ErrorMessage.yaml" diff --git a/openapi/v1/schemas/scim/Email.yaml b/openapi/v1/schemas/scim/Email.yaml index 34d51324..e69de29b 100644 --- a/openapi/v1/schemas/scim/Email.yaml +++ b/openapi/v1/schemas/scim/Email.yaml @@ -1,14 +0,0 @@ -example: - type: work - value: value - primary: true -properties: - type: - enum: - - work - type: string - value: - type: string - primary: - type: boolean -type: object diff --git a/openapi/v1/schemas/scim/ErrorMessage.yaml b/openapi/v1/schemas/scim/ErrorMessage.yaml index e2f428bf..e69de29b 100644 --- a/openapi/v1/schemas/scim/ErrorMessage.yaml +++ b/openapi/v1/schemas/scim/ErrorMessage.yaml @@ -1,7 +0,0 @@ -properties: - message: - description: Detailed error message - type: string -required: -- message -type: object diff --git a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml index 3a43740a..e69de29b 100644 --- a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml +++ b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml @@ -1,26 +0,0 @@ -properties: - Resources: - description: List of groups - items: - $ref: "#/components/schemas/GroupResponse" - type: array - itemsPerPage: - format: int64 - type: integer - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:ListResponse - type: string - type: array - startIndex: - format: int64 - type: integer - totalResults: - format: int64 - type: integer -type: object -components: - schemas: - GroupResponse: - $ref: "./GroupResponse.yaml" diff --git a/openapi/v1/schemas/scim/FilterUsersResponse.yaml b/openapi/v1/schemas/scim/FilterUsersResponse.yaml index 6294c5cb..e69de29b 100644 --- a/openapi/v1/schemas/scim/FilterUsersResponse.yaml +++ b/openapi/v1/schemas/scim/FilterUsersResponse.yaml @@ -1,26 +0,0 @@ -properties: - Resources: - description: List of users - items: - $ref: "#/components/schemas/UserResponse" - type: array - itemsPerPage: - format: int64 - type: integer - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:ListResponse - type: string - type: array - startIndex: - format: int64 - type: integer - totalResults: - format: int64 - type: integer -type: object -components: - schemas: - UserResponse: - $ref: "./UserResponse.yaml" diff --git a/openapi/v1/schemas/scim/Group.yaml b/openapi/v1/schemas/scim/Group.yaml index ce4b620a..e69de29b 100644 --- a/openapi/v1/schemas/scim/Group.yaml +++ b/openapi/v1/schemas/scim/Group.yaml @@ -1,38 +0,0 @@ -example: - displayName: displayName - schemas: - - urn:ietf:params:scim:schemas:core:2.0:Group - - urn:ietf:params:scim:schemas:core:2.0:Group - members: - - display: display - value: value - - display: display - value: value - externalId: externalId - id: id -properties: - externalId: - description: External unique resource id - type: string - id: - description: Unique resource id - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:schemas:core:2.0:Group - type: string - type: array - members: - items: - $ref: "#/components/schemas/Member" - type: array - displayName: - type: string -required: -- displayName -type: object -components: - schemas: - Member: - $ref: "./Member.yaml" diff --git a/openapi/v1/schemas/scim/GroupPatch.yaml b/openapi/v1/schemas/scim/GroupPatch.yaml index daf63b73..e69de29b 100644 --- a/openapi/v1/schemas/scim/GroupPatch.yaml +++ b/openapi/v1/schemas/scim/GroupPatch.yaml @@ -1,31 +0,0 @@ -example: - schemas: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - - urn:ietf:params:scim:api:messages:2.0:PatchOp - Operations: - - op: add - path: path - value: {} - - op: add - path: path - value: {} -properties: - Operations: - description: Patch operations list - items: - $ref: "#/components/schemas/PatchOperation" - type: array - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - type: string - type: array -required: -- Operations -- schemas -type: object -components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" diff --git a/openapi/v1/schemas/scim/GroupResponse.yaml b/openapi/v1/schemas/scim/GroupResponse.yaml index acbbaf7a..e69de29b 100644 --- a/openapi/v1/schemas/scim/GroupResponse.yaml +++ b/openapi/v1/schemas/scim/GroupResponse.yaml @@ -1,12 +0,0 @@ -allOf: -- $ref: "#/components/schemas/Group" -- properties: - meta: - $ref: "#/components/schemas/Meta" - type: object -components: - schemas: - Group: - $ref: "./Group.yaml" - Meta: - $ref: "./Meta.yaml" diff --git a/openapi/v1/schemas/scim/Member.yaml b/openapi/v1/schemas/scim/Member.yaml index e12a32d1..e69de29b 100644 --- a/openapi/v1/schemas/scim/Member.yaml +++ b/openapi/v1/schemas/scim/Member.yaml @@ -1,16 +0,0 @@ -example: - display: display - value: value -properties: - value: - type: string - display: - type: string - $ref: - description: The URI of the member resource - format: uri - type: string -required: -- $ref -- value -type: object diff --git a/openapi/v1/schemas/scim/Meta.yaml b/openapi/v1/schemas/scim/Meta.yaml index fe4f24b4..e69de29b 100644 --- a/openapi/v1/schemas/scim/Meta.yaml +++ b/openapi/v1/schemas/scim/Meta.yaml @@ -1,14 +0,0 @@ -description: resource metadata -properties: - created: - format: date-time - type: string - lastModified: - format: date-time - type: string - resourceType: - enum: - - User - - Group - type: string -type: object diff --git a/openapi/v1/schemas/scim/PatchOperation.yaml b/openapi/v1/schemas/scim/PatchOperation.yaml index b48b7e07..e69de29b 100644 --- a/openapi/v1/schemas/scim/PatchOperation.yaml +++ b/openapi/v1/schemas/scim/PatchOperation.yaml @@ -1,20 +0,0 @@ -example: - op: add - path: path - value: {} -properties: - op: - enum: - - add - - replace - - remove - type: string - path: - type: string - value: - description: Corresponding 'value' of that field specified by 'path' - properties: {} - type: object -required: -- op -type: object diff --git a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml index f7412161..e69de29b 100644 --- a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml +++ b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml @@ -1,30 +0,0 @@ -properties: - detail: - description: Detailed error message - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:Error - type: string - type: array - scimType: - description: Bad request type when status code is 400 - enum: - - uniqueness - - tooMany - - mutability - - sensitive - - invalidSyntax - - invalidFilter - - invalidPath - - invalidValue - - invalidVers - - noTarget - type: string - status: - description: Same as HTTP status code, e.g. 400, 403, etc. - type: string -required: -- status -type: object diff --git a/openapi/v1/schemas/scim/User.yaml b/openapi/v1/schemas/scim/User.yaml index 5f91e2a5..e69de29b 100644 --- a/openapi/v1/schemas/scim/User.yaml +++ b/openapi/v1/schemas/scim/User.yaml @@ -1,49 +0,0 @@ -example: - emails: - - type: work - value: value - primary: true - - type: work - value: value - primary: true - displayName: displayName - schemas: - - urn:ietf:params:scim:schemas:core:2.0:User - - urn:ietf:params:scim:schemas:core:2.0:User - active: true - externalId: externalId - id: id - userName: userName -properties: - active: - description: User status - type: boolean - emails: - items: - $ref: "#/components/schemas/Email" - type: array - externalId: - description: External unique resource id - type: string - id: - description: Unique resource id - type: string - schemas: - items: - enum: - - urn:ietf:params:scim:schemas:core:2.0:User - type: string - type: array - userName: - type: string - displayName: - type: string -required: -- active -- displayName -- emails -type: object -components: - schemas: - Email: - $ref: "./Email.yaml" diff --git a/openapi/v1/schemas/scim/UserPatch.yaml b/openapi/v1/schemas/scim/UserPatch.yaml index daf63b73..e69de29b 100644 --- a/openapi/v1/schemas/scim/UserPatch.yaml +++ b/openapi/v1/schemas/scim/UserPatch.yaml @@ -1,31 +0,0 @@ -example: - schemas: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - - urn:ietf:params:scim:api:messages:2.0:PatchOp - Operations: - - op: add - path: path - value: {} - - op: add - path: path - value: {} -properties: - Operations: - description: Patch operations list - items: - $ref: "#/components/schemas/PatchOperation" - type: array - schemas: - items: - enum: - - urn:ietf:params:scim:api:messages:2.0:PatchOp - type: string - type: array -required: -- Operations -- schemas -type: object -components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" diff --git a/openapi/v1/schemas/scim/UserResponse.yaml b/openapi/v1/schemas/scim/UserResponse.yaml index b47ace64..e69de29b 100644 --- a/openapi/v1/schemas/scim/UserResponse.yaml +++ b/openapi/v1/schemas/scim/UserResponse.yaml @@ -1,12 +0,0 @@ -allOf: -- $ref: "#/components/schemas/User" -- properties: - meta: - $ref: "#/components/schemas/Meta" - type: object -components: - schemas: - User: - $ref: "./User.yaml" - Meta: - $ref: "./Meta.yaml" diff --git a/openapi/v1/schemas/study/Study.yaml b/openapi/v1/schemas/study/Study.yaml index 91bf3091..e69de29b 100644 --- a/openapi/v1/schemas/study/Study.yaml +++ b/openapi/v1/schemas/study/Study.yaml @@ -1 +0,0 @@ -type: object diff --git a/openapi/v1/schemas/tasks/TaskInfo.yaml b/openapi/v1/schemas/tasks/TaskInfo.yaml index abb8be38..e69de29b 100644 --- a/openapi/v1/schemas/tasks/TaskInfo.yaml +++ b/openapi/v1/schemas/tasks/TaskInfo.yaml @@ -1,43 +0,0 @@ -example: - application: application - createdBy: createdBy - endedAt: 6 - name: name - startedAt: 0 - id: id - status: CREATED -properties: - id: - readOnly: true - type: string - name: - readOnly: true - type: string - status: - enum: - - CREATED - - QUEUEING - - QUEUED - - STARTING - - RUNNING - - DONE - - FAILED - - BLOCKED_BY_DEPENDENCY_FAILURE - - KILLED - readOnly: true - type: string - application: - readOnly: true - type: string - startedAt: - format: int64 - readOnly: true - type: integer - endedAt: - format: int64 - readOnly: true - type: integer - createdBy: - readOnly: true - type: string -type: object diff --git a/openapi/v1/schemas/variant/VariantItem.yaml b/openapi/v1/schemas/variant/VariantItem.yaml index 0edf25e6..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantItem.yaml +++ b/openapi/v1/schemas/variant/VariantItem.yaml @@ -1,82 +0,0 @@ -example: - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: A - alt: - - GC - - GAATTTA - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype -properties: - itemId: - type: string - itemOrigin: - type: object - properties: - runSourceId: - type: string - runId: - type: string - groupId: - type: string - metadata: - type: object - variant: - type: object - properties: - chrom: - type: string - pos: - format: int64 - type: integer - id: - type: array - items: - type: string - ref: - type: string - alt: - type: array - items: - type: string - qual: - type: number - filter: - type: array - items: - type: string - info: - type: object - patternProperties: - "^.*$": - type: array - items: - oneOf: - - type: string - - type: number - genotype: - type: object - patternProperties: - "^.*$": - type: string -type: object diff --git a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml index 92f53380..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml +++ b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml @@ -1,15 +0,0 @@ -example: - itemId: itemId - metadata: {} - annotation: {} -properties: - itemId: - readOnly: true - type: string - metadata: - type: object - annotation: - type: object - referenceGenome: - type: object -type: object diff --git a/openapi/v1/schemas/variant/VariantResponse.yaml b/openapi/v1/schemas/variant/VariantResponse.yaml index d85e9b72..e69de29b 100644 --- a/openapi/v1/schemas/variant/VariantResponse.yaml +++ b/openapi/v1/schemas/variant/VariantResponse.yaml @@ -1,71 +0,0 @@ -example: - cursor: cursor - data: - - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: reference - alt: - - alteration - - alteration - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype - - ref: reference - itemId: itemId - itemOrigin: - runSourceId: runSourceId, - runId: runId, - groupId: groupId - metadata: {} - id: - - variationId - - variationId - variant: - chrom: chromosome - pos: 0 - id: - - id - ref: reference - alt: - - alteration - - alteration - qual: 10 - filter: - - PASS - info: - key: - - info - - info - genotype: - key: genotype -properties: - data: - items: - $ref: "#/components/schemas/VariantItem" - type: array - cursor: - type: string -type: object -components: - schemas: - VariantItem: - $ref: "VariantItem.yaml" From 1dbd2a90c5995fd6c99867fbbb3b82d393ea475b Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:32:11 +0100 Subject: [PATCH 15/29] [ODM-13126] Finish moving spec --- openapi/v1/odm.yaml | 522 +++++++----------- openapi/v1/schemas/cell/CellGroupRequest.yaml | 32 -- ...ormationParametersForMultipartRequest.yaml | 14 - 3 files changed, 197 insertions(+), 371 deletions(-) diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 745744c1..8385d682 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -23925,10 +23925,6 @@ components: type: array cursor: type: string - components: - schemas: - Cell: - $ref: "./Cell.yaml" example: cursor: "GSF123456-AAAGATGGTTCCTCCA-1" data: @@ -24061,10 +24057,6 @@ components: cursor: type: string type: object - components: - schemas: - ExpressionItem: - $ref: "./ExpressionItem.yaml" IntegrationHelper: type: object ListResponse: @@ -24087,10 +24079,6 @@ components: type: object type: array type: object - components: - schemas: - MetaResponse: - $ref: "./MetaResponse.yaml" MetaResponse: example: pagination: @@ -24102,10 +24090,6 @@ components: pagination: $ref: "#/components/schemas/PaginationInfo" type: object - components: - schemas: - PaginationInfo: - $ref: "./PaginationInfo.yaml" MetadataContent: type: object MetadataWithId: @@ -24249,10 +24233,6 @@ components: cursor: type: string type: object - components: - schemas: - FlowCytometryItem: - $ref: "./FlowCytometryItem.yaml" AttributeInvalidValue: example: count: 0 @@ -24276,10 +24256,6 @@ components: $ref: "#/components/schemas/ValidationError" type: array type: object - components: - schemas: - ValidationError: - $ref: "./ValidationError.yaml" AttributeValidationSummary: example: attributeName: attributeName @@ -24306,10 +24282,6 @@ components: $ref: "#/components/schemas/AttributeInvalidValue" type: array type: object - components: - schemas: - AttributeInvalidValue: - $ref: "./AttributeInvalidValue.yaml" BatchOfIds: description: Request model for getting links by many IDs. example: @@ -24360,10 +24332,6 @@ components: relationships: $ref: "#/components/schemas/Relationships" type: object - components: - schemas: - Relationships: - $ref: "./Relationships.yaml" GroupValidationSummary: example: groupAccession: groupAccession @@ -24408,10 +24376,6 @@ components: $ref: "#/components/schemas/AttributeValidationSummary" type: array type: object - components: - schemas: - AttributeValidationSummary: - $ref: "./AttributeValidationSummary.yaml" IMetadata: properties: source: @@ -24473,12 +24437,6 @@ components: relationships: $ref: "#/components/schemas/Relationships" type: object - components: - schemas: - IMetadata: - $ref: "./IMetadata.yaml" - Relationships: - $ref: "./Relationships.yaml" OmicsResponse: example: cursor: cursor @@ -24519,10 +24477,6 @@ components: cursor: type: string type: object - components: - schemas: - DataPresentation: - $ref: "./DataPresentation.yaml" OmicsResponseMetadataPresentation: properties: data: @@ -24538,10 +24492,6 @@ components: cursor: type: string type: object - components: - schemas: - MetadataPresentation: - $ref: "./MetadataPresentation.yaml" OmicsResponseMetadataWithId: properties: data: @@ -24557,10 +24507,6 @@ components: cursor: type: string type: object - components: - schemas: - MetadataWithId: - $ref: "../common/MetadataWithId.yaml" Preparation: type: object Relationships: @@ -24673,10 +24619,6 @@ components: $ref: "#/components/schemas/GroupValidationSummary" type: array type: object - components: - schemas: - GroupValidationSummary: - $ref: "./GroupValidationSummary.yaml" TaskInfo: example: application: application @@ -24762,12 +24704,6 @@ components: page: $ref: "#/components/schemas/PageRequest" type: object - components: - schemas: - AppliedFilter: - $ref: "./AppliedFilter.yaml" - PageRequest: - $ref: "./PageRequest.yaml" AppliedFilter: properties: type: @@ -24874,12 +24810,6 @@ components: $ref: "#/components/schemas/FilterOptionGroup" type: array type: object - components: - schemas: - ObjectsPage: - $ref: "./ObjectsPage.yaml" - FilterOptionGroup: - $ref: "./FilterOptionGroup.yaml" ObjectsPage: example: filteredCount: 0 @@ -24932,12 +24862,6 @@ components: $ref: "#/components/schemas/StudySearchInfo" type: array type: object - components: - schemas: - PageRequest: - $ref: "./PageRequest.yaml" - StudySearchInfo: - $ref: "./StudySearchInfo.yaml" StudySearchInfo: example: owner: owner @@ -24981,10 +24905,6 @@ components: $ref: "#/components/schemas/MetainfoKeyForSummary" type: array type: object - components: - schemas: - MetainfoKeyForSummary: - $ref: "./MetainfoKeyForSummary.yaml" MetainfoKeyForSummary: example: values: @@ -25022,10 +24942,6 @@ components: $ref: "#/components/schemas/FilterOption" type: array type: object - components: - schemas: - FilterOption: - $ref: "./FilterOption.yaml" FilterOption: example: filterId: filterId @@ -25047,9 +24963,9 @@ components: type: object properties: caseGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' controlGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' exQuery: type: string example: 'feature=ENSG00000230368,ENSG00000188976' @@ -25078,97 +24994,95 @@ components: required: - resultsPerGene - pagination - components: - schemas: - GeneEntry: - type: object - # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. - properties: - geneId: - type: string - description: Gene identifier. - example: ENSG00000230368 - caseCellCount: - type: integer - description: Number of cells expressing the gene in the case group. - example: 8450 - controlCellCount: - type: integer - description: Number of cells expressing the gene in the control group. - example: 8123 - caseAvgEx: - type: number - format: double - description: Mean expression level across case cells. - example: 1.24 - controlAvgEx: - type: number - format: double - description: Mean expression level across control cells. - example: 0.62 - exDifference: - type: number - format: double - description: Numerical difference between average expressions. - example: 0.62 - foldChange: - type: number - format: double - description: Ratio of average expressions between case and control groups. - example: 2.0 - log2FC: - type: number - format: double - description: Logarithm with base 2 of the Fold change value. - example: 1.4594316186372973 - mannWhitneyU: - type: number - format: double - description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. - example: 1.5 - pValue: - type: number - format: double - description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. - example: 0.5536169919657803 - required: - - geneId - - caseCellCount - - controlCellCount - - caseAvgEx - - controlAvgEx - - exDifference - - foldChange - - log2FC - - mannWhitneyU - - pValue - Pagination: - type: object - properties: - currentResultsCount: - type: integer - format: int32 - description: Number of results returned in the current response. - example: 1 - limit: - type: integer - format: int32 - description: Results limit, used in the request. - example: 2000 - offset: - type: integer - format: int32 - description: Results offset, used in the request. - example: 0 - required: - - currentResultsCount - - limit - - offset + GeneEntry: + type: object + # The descriptions below are also duplicated in the endpoint description, make sure to keep them in sync. + properties: + geneId: + type: string + description: Gene identifier. + example: ENSG00000230368 + caseCellCount: + type: integer + description: Number of cells expressing the gene in the case group. + example: 8450 + controlCellCount: + type: integer + description: Number of cells expressing the gene in the control group. + example: 8123 + caseAvgEx: + type: number + format: double + description: Mean expression level across case cells. + example: 1.24 + controlAvgEx: + type: number + format: double + description: Mean expression level across control cells. + example: 0.62 + exDifference: + type: number + format: double + description: Numerical difference between average expressions. + example: 0.62 + foldChange: + type: number + format: double + description: Ratio of average expressions between case and control groups. + example: 2.0 + log2FC: + type: number + format: double + description: Logarithm with base 2 of the Fold change value. + example: 1.4594316186372973 + mannWhitneyU: + type: number + format: double + description: Mann–Whitney U test statistic that measures the difference between Case and Control groups. + example: 1.5 + pValue: + type: number + format: double + description: The probability of observing results as extreme as (or more extreme than) those obtained, assuming that the null hypothesis is true. + example: 0.5536169919657803 + required: + - geneId + - caseCellCount + - controlCellCount + - caseAvgEx + - controlAvgEx + - exDifference + - foldChange + - log2FC + - mannWhitneyU + - pValue + Pagination: + type: object + properties: + currentResultsCount: + type: integer + format: int32 + description: Number of results returned in the current response. + example: 1 + limit: + type: integer + format: int32 + description: Results limit, used in the request. + example: 2000 + offset: + type: integer + format: int32 + description: Results offset, used in the request. + example: 0 + required: + - currentResultsCount + - limit + - offset GSRequest: type: object properties: cellGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' geneNames: type: array items: @@ -25189,73 +25103,71 @@ components: type: array items: $ref: '#/components/schemas/GeneSummaryEntry' - components: - schemas: - GeneSummaryEntry: - type: object - description: Per-gene summary statistics. - properties: - geneId: - type: string - description: Gene identifier. - example: "ENSG00000111640" - cellCount: - type: integer - format: int32 - description: Number of cells expressing the gene. - example: 8968167 - mean: - type: number - format: double - description: Mean expression - example: 7.747614311820911 - median: - type: number - format: double - description: Median expression - example: 7 - stdDev: - type: number - format: double - description: Standard deviation - example: 6.499314669429827 - min: - type: number - format: double - description: Minimum value - example: 1 - max: - type: number - format: double - description: Maximum value - example: 496 - quantiles: - type: array - description: | - List of quantile values from 0 to 1 (inclusive), with step 0.1 - example: | - [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] - items: - type: number - format: double - histogram: - type: array - description: | - Histogram as a list of [binStart, binEnd, count] triples. - Length depends of the selected sample size, maximum is 20. - example: | - [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), - (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] - items: - type: array - items: - type: number - format: double + GeneSummaryEntry: + type: object + description: Per-gene summary statistics. + properties: + geneId: + type: string + description: Gene identifier. + example: "ENSG00000111640" + cellCount: + type: integer + format: int32 + description: Number of cells expressing the gene. + example: 8968167 + mean: + type: number + format: double + description: Mean expression + example: 7.747614311820911 + median: + type: number + format: double + description: Median expression + example: 7 + stdDev: + type: number + format: double + description: Standard deviation + example: 6.499314669429827 + min: + type: number + format: double + description: Minimum value + example: 1 + max: + type: number + format: double + description: Maximum value + example: 496 + quantiles: + type: array + description: | + List of quantile values from 0 to 1 (inclusive), with step 0.1 + example: | + [1, 1, 2, 3, 5, 7, 10, 12, 15, 27, 192] + items: + type: number + format: double + histogram: + type: array + description: | + Histogram as a list of [binStart, binEnd, count] triples. + Length depends of the selected sample size, maximum is 20. + example: | + [(1, 15.50289002318, 7686678.375), (15.50289002318, 35.49570418233824, 1229164), + (35.49570418233824, 56.93121325335453, 36531.25), (56.93121325335453, 77.21467372919479, 6910.625)] + items: + type: array + items: + type: number + format: double CRRequest: type: object properties: cellGroup: - $ref: 'CellGroupRequest.yaml' + $ref: '#/components/schemas/CellGroupRequest' exQuery: type: string example: '-3 < value < 3' @@ -25316,10 +25228,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportMetadataRequest: example: metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv @@ -25360,10 +25268,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportSignalRunRequest: description: import signal data request example: @@ -25419,10 +25323,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" ImportExpressionSignalRunRequest: allOf: - $ref: "#/components/schemas/ImportSignalRunRequest" @@ -25462,10 +25362,6 @@ components: the allowance for multi-character separators.' example: ':' type: string - components: - schemas: - ImportSignalRunRequest: - $ref: "./ImportSignalRunRequest.yaml" ImportExpressionSignalRunFromMultipartRequest: allOf: - $ref: "#/components/schemas/ImportSignalRunFomMultipartRequest" @@ -25497,10 +25393,6 @@ components: the allowance for multi-character separators.' example: ':' type: string - components: - schemas: - ImportSignalRunFomMultipartRequest: - $ref: "./ImportSignalRunFomMultipartRequest.yaml" ImportAFileRequest: example: metadataLink: https://mybucket.s3.amazonaws.com/my-experiment/my-object-metadata.tsv @@ -25561,10 +25453,6 @@ components: type: object allOf: - $ref: "#/components/schemas/TransformationParametersForMultipartRequest" - components: - schemas: - TransformationParametersForMultipartRequest: - $ref: "./TransformationParametersForMultipartRequest.yaml" Info: description: job execution information example: @@ -25630,10 +25518,6 @@ components: $ref: "#/components/schemas/ExceptionTypeAndMessage" type: array type: object - components: - schemas: - ExceptionTypeAndMessage: - $ref: "./ExceptionTypeAndMessage.yaml" Output: description: job execution output example: @@ -25679,10 +25563,6 @@ components: required: - status type: object - components: - schemas: - JobRuntimeError: - $ref: "./JobRuntimeError.yaml" DetachedCollection: example: cursor: cursor @@ -25705,10 +25585,6 @@ components: required: - data type: object - components: - schemas: - DetachedObject: - $ref: "./DetachedObject.yaml" DetachedObject: example: createdAt: 2000-01-23T04:56:07+00:00 @@ -25893,7 +25769,7 @@ components: type: string result: items: - $ref: "XrefSetSearchResultEntry.yaml" + $ref: "#/components/schemas/XrefSetSearchResultEntry" type: array type: object XrefSetSearchResultEntry: @@ -26016,10 +25892,6 @@ components: required: - displayName type: object - components: - schemas: - Member: - $ref: "./Member.yaml" Member: example: display: display @@ -26065,10 +25937,6 @@ components: - Operations - schemas type: object - components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" PatchOperation: example: op: add @@ -26113,10 +25981,6 @@ components: format: int64 type: integer type: object - components: - schemas: - GroupResponse: - $ref: "./GroupResponse.yaml" GroupResponse: allOf: - $ref: "#/components/schemas/Group" @@ -26124,12 +25988,6 @@ components: meta: $ref: "#/components/schemas/Meta" type: object - components: - schemas: - Group: - $ref: "./Group.yaml" - Meta: - $ref: "./Meta.yaml" Meta: description: resource metadata properties: @@ -26176,7 +26034,6 @@ components: required: - status type: object - BaseErrorResponse: properties: error: @@ -26184,11 +26041,6 @@ components: required: - error type: object - components: - schemas: - ErrorMessage: - $ref: "./ErrorMessage.yaml" - ErrorMessage: properties: message: @@ -26197,7 +26049,6 @@ components: required: - message type: object - User: example: emails: @@ -26244,11 +26095,6 @@ components: - displayName - emails type: object - components: - schemas: - Email: - $ref: "./Email.yaml" - Email: example: type: work @@ -26264,7 +26110,6 @@ components: primary: type: boolean type: object - UserPatch: example: schemas: @@ -26293,11 +26138,6 @@ components: - Operations - schemas type: object - components: - schemas: - PatchOperation: - $ref: "./PatchOperation.yaml" - FilterUsersResponse: properties: Resources: @@ -26321,11 +26161,6 @@ components: format: int64 type: integer type: object - components: - schemas: - UserResponse: - $ref: "./UserResponse.yaml" - UserResponse: allOf: - $ref: "#/components/schemas/User" @@ -26333,13 +26168,6 @@ components: meta: $ref: "#/components/schemas/Meta" type: object - components: - schemas: - User: - $ref: "./User.yaml" - Meta: - $ref: "./Meta.yaml" - VariantMetadataWithId: example: itemId: itemId @@ -26509,10 +26337,54 @@ components: cursor: type: string type: object - components: - schemas: - VariantItem: - $ref: "VariantItem.yaml" + CellGroupRequest: + type: object + properties: + studyFilter: + type: string + example: '"Study Source"=ArrayExpress' + studyQuery: + type: string + example: 'RNA-Seq of human dendritic cells' + sampleFilter: + type: string + example: '"Species or strain"="Homo sapiens"' + sampleQuery: + type: string + example: 'Clozapine' + libraryFilter: + type: string + example: '"Library Type"=RNA-Seq-1' + libraryQuery: + type: string + example: 'illumina HiSeq500' + preparationFilter: + type: string + example: 'Digestion=Trypsin' + preparationQuery: + type: string + example: 'reversed-phase liquid chromatography' + cellQuery: + type: string + example: 'cellType=Macrophage,Monocyte' + searchSpecificTerms: + type: boolean + example: false + TransformationParametersForMultipartRequest: + properties: + sourceAttachmentAccession: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + transformationName: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + transformationVersion: + type: string + description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. + readOnly: true + type: object securitySchemes: Access-token: in: "header" diff --git a/openapi/v1/schemas/cell/CellGroupRequest.yaml b/openapi/v1/schemas/cell/CellGroupRequest.yaml index 81b6128e..e69de29b 100644 --- a/openapi/v1/schemas/cell/CellGroupRequest.yaml +++ b/openapi/v1/schemas/cell/CellGroupRequest.yaml @@ -1,32 +0,0 @@ -type: object -properties: - studyFilter: - type: string - example: '"Study Source"=ArrayExpress' - studyQuery: - type: string - example: 'RNA-Seq of human dendritic cells' - sampleFilter: - type: string - example: '"Species or strain"="Homo sapiens"' - sampleQuery: - type: string - example: 'Clozapine' - libraryFilter: - type: string - example: '"Library Type"=RNA-Seq-1' - libraryQuery: - type: string - example: 'illumina HiSeq500' - preparationFilter: - type: string - example: 'Digestion=Trypsin' - preparationQuery: - type: string - example: 'reversed-phase liquid chromatography' - cellQuery: - type: string - example: 'cellType=Macrophage,Monocyte' - searchSpecificTerms: - type: boolean - example: false diff --git a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml index 9ae8073f..e69de29b 100644 --- a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml +++ b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml @@ -1,14 +0,0 @@ -properties: - sourceAttachmentAccession: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true - transformationName: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true - transformationVersion: - type: string - description: The property is automatically populated by the attachment transformation pipeline and must not be provided during regular multipart uploads. - readOnly: true -type: object From 8dedd7fd5385b3b6dd60d43fe0042784f2ae111f Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:33:24 +0100 Subject: [PATCH 16/29] [ODM-13126] Remove schemas directory with empty files --- Earthfile | 1 - openapi/v1/schemas/afile/AFile.yaml | 0 openapi/v1/schemas/cell/CRRequest.yaml | 0 openapi/v1/schemas/cell/CRResponse.yaml | 0 openapi/v1/schemas/cell/Cell.yaml | 0 openapi/v1/schemas/cell/CellGroupRequest.yaml | 0 openapi/v1/schemas/cell/CellListResponse.yaml | 0 openapi/v1/schemas/cell/DERequest.yaml | 0 openapi/v1/schemas/cell/DEResponse.yaml | 0 openapi/v1/schemas/cell/GSRequest.yaml | 0 openapi/v1/schemas/cell/GSResponse.yaml | 0 openapi/v1/schemas/common/AccessionResponse.yaml | 0 openapi/v1/schemas/common/CommitInfo.yaml | 0 openapi/v1/schemas/common/IntegrationHelper.yaml | 0 openapi/v1/schemas/common/ListResponse.yaml | 0 openapi/v1/schemas/common/MetaResponse.yaml | 0 openapi/v1/schemas/common/MetadataContent.yaml | 0 openapi/v1/schemas/common/MetadataWithId.yaml | 0 openapi/v1/schemas/common/PaginationInfo.yaml | 0 openapi/v1/schemas/common/ResponseFormat.yaml | 0 openapi/v1/schemas/common/RunFilter.yaml | 0 openapi/v1/schemas/common/RunsResponse.yaml | 0 openapi/v1/schemas/common/SignalRun.yaml | 0 openapi/v1/schemas/expression/ExpressionItem.yaml | 0 openapi/v1/schemas/expression/ExpressionResponse.yaml | 0 openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml | 0 openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml | 0 openapi/v1/schemas/integration/AppliedFilter.yaml | 0 openapi/v1/schemas/integration/AttributeInvalidValue.yaml | 0 openapi/v1/schemas/integration/AttributeValidationSummary.yaml | 0 openapi/v1/schemas/integration/BatchOfIds.yaml | 0 openapi/v1/schemas/integration/DataItem.yaml | 0 openapi/v1/schemas/integration/DataPresentation.yaml | 0 openapi/v1/schemas/integration/FilterOption.yaml | 0 openapi/v1/schemas/integration/FilterOptionGroup.yaml | 0 openapi/v1/schemas/integration/FindObjectsResponse.yaml | 0 openapi/v1/schemas/integration/GroupValidationSummary.yaml | 0 openapi/v1/schemas/integration/IMetadata.yaml | 0 openapi/v1/schemas/integration/Link.yaml | 0 openapi/v1/schemas/integration/MetadataPresentation.yaml | 0 openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml | 0 openapi/v1/schemas/integration/ObjectsPage.yaml | 0 openapi/v1/schemas/integration/OmicsResponse.yaml | 0 .../v1/schemas/integration/OmicsResponseDataPresentation.yaml | 0 .../schemas/integration/OmicsResponseMetadataPresentation.yaml | 0 openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml | 0 openapi/v1/schemas/integration/PageRequest.yaml | 0 openapi/v1/schemas/integration/Relationships.yaml | 0 openapi/v1/schemas/integration/SearchStudyRequest.yaml | 0 openapi/v1/schemas/integration/SourceTypePair.yaml | 0 openapi/v1/schemas/integration/StreamingOutput.yaml | 0 openapi/v1/schemas/integration/StudySearchInfo.yaml | 0 openapi/v1/schemas/integration/StudyValidationSummary.yaml | 0 openapi/v1/schemas/integration/ValidationError.yaml | 0 openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml | 0 openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportAFileRequest.yaml | 0 openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportCellsRequest.yaml | 0 .../job/ImportExpressionSignalRunFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml | 0 openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportMetadataRequest.yaml | 0 openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml | 0 openapi/v1/schemas/job/ImportSignalRunRequest.yaml | 0 openapi/v1/schemas/job/Info.yaml | 0 openapi/v1/schemas/job/JobRuntimeError.yaml | 0 openapi/v1/schemas/job/Output.yaml | 0 .../schemas/job/TransformationParametersForMultipartRequest.yaml | 0 openapi/v1/schemas/library/Library.yaml | 0 openapi/v1/schemas/manage-data/DetachedCollection.yaml | 0 openapi/v1/schemas/manage-data/DetachedObject.yaml | 0 openapi/v1/schemas/manage-data/ManagedObject.yaml | 0 openapi/v1/schemas/preparation/Preparation.yaml | 0 openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml | 0 openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml | 0 openapi/v1/schemas/reference-data/XrefSetMetadata.yaml | 0 openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml | 0 openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml | 0 openapi/v1/schemas/reference-genome/RGItem.yaml | 0 openapi/v1/schemas/reference-genome/UploadRGRequest.yaml | 0 openapi/v1/schemas/sample/Sample.yaml | 0 openapi/v1/schemas/scim/BaseErrorResponse.yaml | 0 openapi/v1/schemas/scim/Email.yaml | 0 openapi/v1/schemas/scim/ErrorMessage.yaml | 0 openapi/v1/schemas/scim/FilterGroupsResponse.yaml | 0 openapi/v1/schemas/scim/FilterUsersResponse.yaml | 0 openapi/v1/schemas/scim/Group.yaml | 0 openapi/v1/schemas/scim/GroupPatch.yaml | 0 openapi/v1/schemas/scim/GroupResponse.yaml | 0 openapi/v1/schemas/scim/Member.yaml | 0 openapi/v1/schemas/scim/Meta.yaml | 0 openapi/v1/schemas/scim/PatchOperation.yaml | 0 openapi/v1/schemas/scim/SCIMErrorResponse.yaml | 0 openapi/v1/schemas/scim/User.yaml | 0 openapi/v1/schemas/scim/UserPatch.yaml | 0 openapi/v1/schemas/scim/UserResponse.yaml | 0 openapi/v1/schemas/study/Study.yaml | 0 openapi/v1/schemas/tasks/TaskInfo.yaml | 0 openapi/v1/schemas/variant/VariantItem.yaml | 0 openapi/v1/schemas/variant/VariantMetadataWithId.yaml | 0 openapi/v1/schemas/variant/VariantResponse.yaml | 0 102 files changed, 1 deletion(-) delete mode 100644 openapi/v1/schemas/afile/AFile.yaml delete mode 100644 openapi/v1/schemas/cell/CRRequest.yaml delete mode 100644 openapi/v1/schemas/cell/CRResponse.yaml delete mode 100644 openapi/v1/schemas/cell/Cell.yaml delete mode 100644 openapi/v1/schemas/cell/CellGroupRequest.yaml delete mode 100644 openapi/v1/schemas/cell/CellListResponse.yaml delete mode 100644 openapi/v1/schemas/cell/DERequest.yaml delete mode 100644 openapi/v1/schemas/cell/DEResponse.yaml delete mode 100644 openapi/v1/schemas/cell/GSRequest.yaml delete mode 100644 openapi/v1/schemas/cell/GSResponse.yaml delete mode 100644 openapi/v1/schemas/common/AccessionResponse.yaml delete mode 100644 openapi/v1/schemas/common/CommitInfo.yaml delete mode 100644 openapi/v1/schemas/common/IntegrationHelper.yaml delete mode 100644 openapi/v1/schemas/common/ListResponse.yaml delete mode 100644 openapi/v1/schemas/common/MetaResponse.yaml delete mode 100644 openapi/v1/schemas/common/MetadataContent.yaml delete mode 100644 openapi/v1/schemas/common/MetadataWithId.yaml delete mode 100644 openapi/v1/schemas/common/PaginationInfo.yaml delete mode 100644 openapi/v1/schemas/common/ResponseFormat.yaml delete mode 100644 openapi/v1/schemas/common/RunFilter.yaml delete mode 100644 openapi/v1/schemas/common/RunsResponse.yaml delete mode 100644 openapi/v1/schemas/common/SignalRun.yaml delete mode 100644 openapi/v1/schemas/expression/ExpressionItem.yaml delete mode 100644 openapi/v1/schemas/expression/ExpressionResponse.yaml delete mode 100644 openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml delete mode 100644 openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml delete mode 100644 openapi/v1/schemas/integration/AppliedFilter.yaml delete mode 100644 openapi/v1/schemas/integration/AttributeInvalidValue.yaml delete mode 100644 openapi/v1/schemas/integration/AttributeValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/BatchOfIds.yaml delete mode 100644 openapi/v1/schemas/integration/DataItem.yaml delete mode 100644 openapi/v1/schemas/integration/DataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/FilterOption.yaml delete mode 100644 openapi/v1/schemas/integration/FilterOptionGroup.yaml delete mode 100644 openapi/v1/schemas/integration/FindObjectsResponse.yaml delete mode 100644 openapi/v1/schemas/integration/GroupValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/IMetadata.yaml delete mode 100644 openapi/v1/schemas/integration/Link.yaml delete mode 100644 openapi/v1/schemas/integration/MetadataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml delete mode 100644 openapi/v1/schemas/integration/ObjectsPage.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponse.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml delete mode 100644 openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml delete mode 100644 openapi/v1/schemas/integration/PageRequest.yaml delete mode 100644 openapi/v1/schemas/integration/Relationships.yaml delete mode 100644 openapi/v1/schemas/integration/SearchStudyRequest.yaml delete mode 100644 openapi/v1/schemas/integration/SourceTypePair.yaml delete mode 100644 openapi/v1/schemas/integration/StreamingOutput.yaml delete mode 100644 openapi/v1/schemas/integration/StudySearchInfo.yaml delete mode 100644 openapi/v1/schemas/integration/StudyValidationSummary.yaml delete mode 100644 openapi/v1/schemas/integration/ValidationError.yaml delete mode 100644 openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml delete mode 100644 openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportAFileRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportCellsRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportMetadataRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/job/ImportSignalRunRequest.yaml delete mode 100644 openapi/v1/schemas/job/Info.yaml delete mode 100644 openapi/v1/schemas/job/JobRuntimeError.yaml delete mode 100644 openapi/v1/schemas/job/Output.yaml delete mode 100644 openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml delete mode 100644 openapi/v1/schemas/library/Library.yaml delete mode 100644 openapi/v1/schemas/manage-data/DetachedCollection.yaml delete mode 100644 openapi/v1/schemas/manage-data/DetachedObject.yaml delete mode 100644 openapi/v1/schemas/manage-data/ManagedObject.yaml delete mode 100644 openapi/v1/schemas/preparation/Preparation.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetMetadata.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml delete mode 100644 openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml delete mode 100644 openapi/v1/schemas/reference-genome/RGItem.yaml delete mode 100644 openapi/v1/schemas/reference-genome/UploadRGRequest.yaml delete mode 100644 openapi/v1/schemas/sample/Sample.yaml delete mode 100644 openapi/v1/schemas/scim/BaseErrorResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Email.yaml delete mode 100644 openapi/v1/schemas/scim/ErrorMessage.yaml delete mode 100644 openapi/v1/schemas/scim/FilterGroupsResponse.yaml delete mode 100644 openapi/v1/schemas/scim/FilterUsersResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Group.yaml delete mode 100644 openapi/v1/schemas/scim/GroupPatch.yaml delete mode 100644 openapi/v1/schemas/scim/GroupResponse.yaml delete mode 100644 openapi/v1/schemas/scim/Member.yaml delete mode 100644 openapi/v1/schemas/scim/Meta.yaml delete mode 100644 openapi/v1/schemas/scim/PatchOperation.yaml delete mode 100644 openapi/v1/schemas/scim/SCIMErrorResponse.yaml delete mode 100644 openapi/v1/schemas/scim/User.yaml delete mode 100644 openapi/v1/schemas/scim/UserPatch.yaml delete mode 100644 openapi/v1/schemas/scim/UserResponse.yaml delete mode 100644 openapi/v1/schemas/study/Study.yaml delete mode 100644 openapi/v1/schemas/tasks/TaskInfo.yaml delete mode 100644 openapi/v1/schemas/variant/VariantItem.yaml delete mode 100644 openapi/v1/schemas/variant/VariantMetadataWithId.yaml delete mode 100644 openapi/v1/schemas/variant/VariantResponse.yaml diff --git a/Earthfile b/Earthfile index 455e01cb..15871389 100644 --- a/Earthfile +++ b/Earthfile @@ -169,7 +169,6 @@ swagger: stoplight: FROM nginxinc/nginx-unprivileged:1.29.5-alpine - COPY +build/v1/schemas /usr/share/nginx/html/schemas/ COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / diff --git a/openapi/v1/schemas/afile/AFile.yaml b/openapi/v1/schemas/afile/AFile.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CRRequest.yaml b/openapi/v1/schemas/cell/CRRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CRResponse.yaml b/openapi/v1/schemas/cell/CRResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/Cell.yaml b/openapi/v1/schemas/cell/Cell.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CellGroupRequest.yaml b/openapi/v1/schemas/cell/CellGroupRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/CellListResponse.yaml b/openapi/v1/schemas/cell/CellListResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/DERequest.yaml b/openapi/v1/schemas/cell/DERequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/DEResponse.yaml b/openapi/v1/schemas/cell/DEResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/GSRequest.yaml b/openapi/v1/schemas/cell/GSRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/cell/GSResponse.yaml b/openapi/v1/schemas/cell/GSResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/AccessionResponse.yaml b/openapi/v1/schemas/common/AccessionResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/CommitInfo.yaml b/openapi/v1/schemas/common/CommitInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/IntegrationHelper.yaml b/openapi/v1/schemas/common/IntegrationHelper.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/ListResponse.yaml b/openapi/v1/schemas/common/ListResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetaResponse.yaml b/openapi/v1/schemas/common/MetaResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetadataContent.yaml b/openapi/v1/schemas/common/MetadataContent.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/MetadataWithId.yaml b/openapi/v1/schemas/common/MetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/PaginationInfo.yaml b/openapi/v1/schemas/common/PaginationInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/ResponseFormat.yaml b/openapi/v1/schemas/common/ResponseFormat.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/RunFilter.yaml b/openapi/v1/schemas/common/RunFilter.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/RunsResponse.yaml b/openapi/v1/schemas/common/RunsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/common/SignalRun.yaml b/openapi/v1/schemas/common/SignalRun.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/expression/ExpressionItem.yaml b/openapi/v1/schemas/expression/ExpressionItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/expression/ExpressionResponse.yaml b/openapi/v1/schemas/expression/ExpressionResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml b/openapi/v1/schemas/flow-cytometry/FlowCytometryResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AppliedFilter.yaml b/openapi/v1/schemas/integration/AppliedFilter.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AttributeInvalidValue.yaml b/openapi/v1/schemas/integration/AttributeInvalidValue.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/AttributeValidationSummary.yaml b/openapi/v1/schemas/integration/AttributeValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/BatchOfIds.yaml b/openapi/v1/schemas/integration/BatchOfIds.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/DataItem.yaml b/openapi/v1/schemas/integration/DataItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/DataPresentation.yaml b/openapi/v1/schemas/integration/DataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FilterOption.yaml b/openapi/v1/schemas/integration/FilterOption.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FilterOptionGroup.yaml b/openapi/v1/schemas/integration/FilterOptionGroup.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/FindObjectsResponse.yaml b/openapi/v1/schemas/integration/FindObjectsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/GroupValidationSummary.yaml b/openapi/v1/schemas/integration/GroupValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/IMetadata.yaml b/openapi/v1/schemas/integration/IMetadata.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/Link.yaml b/openapi/v1/schemas/integration/Link.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/MetadataPresentation.yaml b/openapi/v1/schemas/integration/MetadataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml b/openapi/v1/schemas/integration/MetainfoKeyForSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/ObjectsPage.yaml b/openapi/v1/schemas/integration/ObjectsPage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponse.yaml b/openapi/v1/schemas/integration/OmicsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseDataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataPresentation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml b/openapi/v1/schemas/integration/OmicsResponseMetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/PageRequest.yaml b/openapi/v1/schemas/integration/PageRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/Relationships.yaml b/openapi/v1/schemas/integration/Relationships.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/SearchStudyRequest.yaml b/openapi/v1/schemas/integration/SearchStudyRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/SourceTypePair.yaml b/openapi/v1/schemas/integration/SourceTypePair.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StreamingOutput.yaml b/openapi/v1/schemas/integration/StreamingOutput.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StudySearchInfo.yaml b/openapi/v1/schemas/integration/StudySearchInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/StudyValidationSummary.yaml b/openapi/v1/schemas/integration/StudyValidationSummary.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/integration/ValidationError.yaml b/openapi/v1/schemas/integration/ValidationError.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml b/openapi/v1/schemas/job/ExceptionTypeAndMessage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportAFileFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportAFileRequest.yaml b/openapi/v1/schemas/job/ImportAFileRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportCellsFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportCellsRequest.yaml b/openapi/v1/schemas/job/ImportCellsRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportExpressionSignalRunRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml b/openapi/v1/schemas/job/ImportMetadataFromMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportMetadataRequest.yaml b/openapi/v1/schemas/job/ImportMetadataRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunFomMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/ImportSignalRunRequest.yaml b/openapi/v1/schemas/job/ImportSignalRunRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/Info.yaml b/openapi/v1/schemas/job/Info.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/JobRuntimeError.yaml b/openapi/v1/schemas/job/JobRuntimeError.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/Output.yaml b/openapi/v1/schemas/job/Output.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml b/openapi/v1/schemas/job/TransformationParametersForMultipartRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/library/Library.yaml b/openapi/v1/schemas/library/Library.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/DetachedCollection.yaml b/openapi/v1/schemas/manage-data/DetachedCollection.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/DetachedObject.yaml b/openapi/v1/schemas/manage-data/DetachedObject.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/manage-data/ManagedObject.yaml b/openapi/v1/schemas/manage-data/ManagedObject.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/preparation/Preparation.yaml b/openapi/v1/schemas/preparation/Preparation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml b/openapi/v1/schemas/reference-data/XrefSetCreateResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml b/openapi/v1/schemas/reference-data/XrefSetMetadata.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResult.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml b/openapi/v1/schemas/reference-data/XrefSetSearchResultEntry.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-genome/RGItem.yaml b/openapi/v1/schemas/reference-genome/RGItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml b/openapi/v1/schemas/reference-genome/UploadRGRequest.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/sample/Sample.yaml b/openapi/v1/schemas/sample/Sample.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/BaseErrorResponse.yaml b/openapi/v1/schemas/scim/BaseErrorResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Email.yaml b/openapi/v1/schemas/scim/Email.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/ErrorMessage.yaml b/openapi/v1/schemas/scim/ErrorMessage.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/FilterGroupsResponse.yaml b/openapi/v1/schemas/scim/FilterGroupsResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/FilterUsersResponse.yaml b/openapi/v1/schemas/scim/FilterUsersResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Group.yaml b/openapi/v1/schemas/scim/Group.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/GroupPatch.yaml b/openapi/v1/schemas/scim/GroupPatch.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/GroupResponse.yaml b/openapi/v1/schemas/scim/GroupResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Member.yaml b/openapi/v1/schemas/scim/Member.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/Meta.yaml b/openapi/v1/schemas/scim/Meta.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/PatchOperation.yaml b/openapi/v1/schemas/scim/PatchOperation.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/SCIMErrorResponse.yaml b/openapi/v1/schemas/scim/SCIMErrorResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/User.yaml b/openapi/v1/schemas/scim/User.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/UserPatch.yaml b/openapi/v1/schemas/scim/UserPatch.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/scim/UserResponse.yaml b/openapi/v1/schemas/scim/UserResponse.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/study/Study.yaml b/openapi/v1/schemas/study/Study.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/tasks/TaskInfo.yaml b/openapi/v1/schemas/tasks/TaskInfo.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantItem.yaml b/openapi/v1/schemas/variant/VariantItem.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantMetadataWithId.yaml b/openapi/v1/schemas/variant/VariantMetadataWithId.yaml deleted file mode 100644 index e69de29b..00000000 diff --git a/openapi/v1/schemas/variant/VariantResponse.yaml b/openapi/v1/schemas/variant/VariantResponse.yaml deleted file mode 100644 index e69de29b..00000000 From 9c30d5a96f50d58fa9814b51a47abab79a2bf99b Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Wed, 4 Mar 2026 11:43:27 +0100 Subject: [PATCH 17/29] [ODM-13126] Downgrade version of spec --- openapi/v1/odm.yaml | 47 +++++++++++++++++++-------------------------- 1 file changed, 20 insertions(+), 27 deletions(-) diff --git a/openapi/v1/odm.yaml b/openapi/v1/odm.yaml index 8385d682..35381cef 100644 --- a/openapi/v1/odm.yaml +++ b/openapi/v1/odm.yaml @@ -1,5 +1,4 @@ ---- -openapi: "3.1.0" +openapi: "3.0.3" info: description: "This swagger page describes the variantUser API endpoints for ODM.\ \ These are typically used to find and retrieve variant data and metadata.\n\n\ @@ -24013,12 +24012,11 @@ components: example: value: 1.82 type: object - patternProperties: - "^.*$": - format: double - oneOf: - - type: number - - type: string # Inf or -Inf + additionalProperties: + format: double + oneOf: + - type: number + - type: string # Inf or -Inf description: type: string readOnly: true @@ -25656,9 +25654,8 @@ components: example: '"http://example-url.com/my-mapping.tsv"' type: string metadata: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string description: Additional user metadata type: object required: @@ -25703,9 +25700,8 @@ components: - gene-transcript type: string metadata: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string description: Additional user metadata type: object warnings: @@ -25747,9 +25743,8 @@ components: format: int64 type: integer data: - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string type: object type: object XrefSetSearchResult: @@ -26255,18 +26250,16 @@ components: type: string info: type: object - patternProperties: - "^.*$": - type: array - items: - oneOf: - - type: string - - type: number + additionalProperties: + type: array + items: + oneOf: + - type: string + - type: number genotype: type: object - patternProperties: - "^.*$": - type: string + additionalProperties: + type: string type: object VariantResponse: From 585725bf7160067fefff85b350228c560ed45a26 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Thu, 5 Mar 2026 12:36:00 +0100 Subject: [PATCH 18/29] [ODM-13126] Simple mcp server --- mcp-server/.gitignore | 2 + mcp-server/.python-version | 1 + mcp-server/README.md | 0 mcp-server/__pycache__/main.cpython-314.pyc | Bin 0 -> 1145 bytes mcp-server/main.py | 32 + mcp-server/pyproject.toml | 10 + mcp-server/uv.lock | 1131 +++++++++++++++++++ 7 files changed, 1176 insertions(+) create mode 100644 mcp-server/.gitignore create mode 100644 mcp-server/.python-version create mode 100644 mcp-server/README.md create mode 100644 mcp-server/__pycache__/main.cpython-314.pyc create mode 100644 mcp-server/main.py create mode 100644 mcp-server/pyproject.toml create mode 100644 mcp-server/uv.lock diff --git a/mcp-server/.gitignore b/mcp-server/.gitignore new file mode 100644 index 00000000..8d193625 --- /dev/null +++ b/mcp-server/.gitignore @@ -0,0 +1,2 @@ +.venv +.env diff --git a/mcp-server/.python-version b/mcp-server/.python-version new file mode 100644 index 00000000..24ee5b1b --- /dev/null +++ b/mcp-server/.python-version @@ -0,0 +1 @@ +3.13 diff --git a/mcp-server/README.md b/mcp-server/README.md new file mode 100644 index 00000000..e69de29b diff --git a/mcp-server/__pycache__/main.cpython-314.pyc b/mcp-server/__pycache__/main.cpython-314.pyc new file mode 100644 index 0000000000000000000000000000000000000000..856a55a0bd4c6f7460c26676a3b82eebbb361cbf GIT binary patch literal 1145 zcmb7C&2Q646o2;kBTk%zY*?UKs+3ZwLREU$N+7YSC|M{GrM0{uAtc9glSyMWu_Jo| zG}5AQ;X@oiTy~G;1l;%=;KC6oQlmkf;KHp4B&0pc_aKmOQ($gZ*y|reJdDxXR|SA6#~Oqmb{f z#giw{D7Zo){gL}D6$C074yiM(o^e8QzGzT&`S`*u@;(@Rv>XGF(0mbmEwR)#oiS+@I8uFF$r{zGvb=tz_v}b zt1hYA{cIYqz~(8a#EYV0txmPjsbRa}JJle;BlTL~H|=4~6tRq)jK?!F6tul3@R|7m z{fR--VZX~6-o(+?I*t9-^sDU#o(uRp;IBS>!M1HA2*O*?-od{2pudI0JNRW=fp~gL z%e~fey=3~{VpsX3 zLo#!J-`%Axed3iqv0-iMzjn2roVr!MQNCZ?nCzCfHT;*GjIJ8SN!9J#FNRDyd=@ZR;TEw>xjpNKaC4E!=3.1.0", + "httpx>=0.28.1", +] diff --git a/mcp-server/uv.lock b/mcp-server/uv.lock new file mode 100644 index 00000000..8da13d70 --- /dev/null +++ b/mcp-server/uv.lock @@ -0,0 +1,1131 @@ +version = 1 +revision = 3 +requires-python = ">=3.13" + +[[package]] +name = "aiofile" +version = "3.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "caio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/67/e2/d7cb819de8df6b5c1968a2756c3cb4122d4fa2b8fc768b53b7c9e5edb646/aiofile-3.9.0.tar.gz", hash = "sha256:e5ad718bb148b265b6df1b3752c4d1d83024b93da9bd599df74b9d9ffcf7919b", size = 17943, upload-time = "2024-10-08T10:39:35.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/50/25/da1f0b4dd970e52bf5a36c204c107e11a0c6d3ed195eba0bfbc664c312b2/aiofile-3.9.0-py3-none-any.whl", hash = "sha256:ce2f6c1571538cbdfa0143b04e16b208ecb0e9cb4148e528af8a640ed51cc8aa", size = 19539, upload-time = "2024-10-08T10:39:32.955Z" }, +] + +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, +] + +[[package]] +name = "anyio" +version = "4.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/96/f0/5eb65b2bb0d09ac6776f2eb54adee6abe8228ea05b20a5ad0e4945de8aac/anyio-4.12.1.tar.gz", hash = "sha256:41cfcc3a4c85d3f05c932da7c26d0201ac36f72abd4435ba90d0464a3ffed703", size = 228685, upload-time = "2026-01-06T11:45:21.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/0e/27be9fdef66e72d64c0cdc3cc2823101b80585f8119b5c112c2e8f5f7dab/anyio-4.12.1-py3-none-any.whl", hash = "sha256:d405828884fc140aa80a3c667b8beed277f1dfedec42ba031bd6ac3db606ab6c", size = 113592, upload-time = "2026-01-06T11:45:19.497Z" }, +] + +[[package]] +name = "attrs" +version = "25.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6b/5c/685e6633917e101e5dcb62b9dd76946cbb57c26e133bae9e0cd36033c0a9/attrs-25.4.0.tar.gz", hash = "sha256:16d5969b87f0859ef33a48b35d55ac1be6e42ae49d5e853b597db70c35c57e11", size = 934251, upload-time = "2025-10-06T13:54:44.725Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl", hash = "sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373", size = 67615, upload-time = "2025-10-06T13:54:43.17Z" }, +] + +[[package]] +name = "authlib" +version = "1.6.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/af/98/00d3dd826d46959ad8e32af2dbb2398868fd9fd0683c26e56d0789bd0e68/authlib-1.6.9.tar.gz", hash = "sha256:d8f2421e7e5980cc1ddb4e32d3f5fa659cfaf60d8eaf3281ebed192e4ab74f04", size = 165134, upload-time = "2026-03-02T07:44:01.998Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/53/23/b65f568ed0c22f1efacb744d2db1a33c8068f384b8c9b482b52ebdbc3ef6/authlib-1.6.9-py2.py3-none-any.whl", hash = "sha256:f08b4c14e08f0861dc18a32357b33fbcfd2ea86cfe3fe149484b4d764c4a0ac3", size = 244197, upload-time = "2026-03-02T07:44:00.307Z" }, +] + +[[package]] +name = "beartype" +version = "0.22.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c7/94/1009e248bbfbab11397abca7193bea6626806be9a327d399810d523a07cb/beartype-0.22.9.tar.gz", hash = "sha256:8f82b54aa723a2848a56008d18875f91c1db02c32ef6a62319a002e3e25a975f", size = 1608866, upload-time = "2025-12-13T06:50:30.72Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/cc/18245721fa7747065ab478316c7fea7c74777d07f37ae60db2e84f8172e8/beartype-0.22.9-py3-none-any.whl", hash = "sha256:d16c9bbc61ea14637596c5f6fbff2ee99cbe3573e46a716401734ef50c3060c2", size = 1333658, upload-time = "2025-12-13T06:50:28.266Z" }, +] + +[[package]] +name = "cachetools" +version = "7.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6c/c7/342b33cc6877eebc6c9bb45cb9f78e170e575839699f6f3cc96050176431/cachetools-7.0.2.tar.gz", hash = "sha256:7e7f09a4ca8b791d8bb4864afc71e9c17e607a28e6839ca1a644253c97dbeae0", size = 36983, upload-time = "2026-03-02T19:45:16.926Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/04/4b6968e77c110f12da96fdbfcb39c6557c2e5e81bd7afcf8ed893d5bc588/cachetools-7.0.2-py3-none-any.whl", hash = "sha256:938dcad184827c5e94928c4fd5526e2b46692b7fb1ae94472da9131d0299343c", size = 13793, upload-time = "2026-03-02T19:45:15.495Z" }, +] + +[[package]] +name = "caio" +version = "0.9.25" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/92/88/b8527e1b00c1811db339a1df8bd1ae49d146fcea9d6a5c40e3a80aaeb38d/caio-0.9.25.tar.gz", hash = "sha256:16498e7f81d1d0f5a4c0ad3f2540e65fe25691376e0a5bd367f558067113ed10", size = 26781, upload-time = "2025-12-26T15:21:36.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/57/5e6ff127e6f62c9f15d989560435c642144aa4210882f9494204bc892305/caio-0.9.25-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d6c2a3411af97762a2b03840c3cec2f7f728921ff8adda53d7ea2315a8563451", size = 36979, upload-time = "2025-12-26T15:21:35.484Z" }, + { url = "https://files.pythonhosted.org/packages/a3/9f/f21af50e72117eb528c422d4276cbac11fb941b1b812b182e0a9c70d19c5/caio-0.9.25-cp313-cp313-manylinux2010_x86_64.manylinux2014_x86_64.manylinux_2_12_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0998210a4d5cd5cb565b32ccfe4e53d67303f868a76f212e002a8554692870e6", size = 81900, upload-time = "2025-12-26T15:22:21.919Z" }, + { url = "https://files.pythonhosted.org/packages/9c/12/c39ae2a4037cb10ad5eb3578eb4d5f8c1a2575c62bba675f3406b7ef0824/caio-0.9.25-cp313-cp313-manylinux_2_34_aarch64.whl", hash = "sha256:1a177d4777141b96f175fe2c37a3d96dec7911ed9ad5f02bac38aaa1c936611f", size = 81523, upload-time = "2026-03-04T22:08:25.187Z" }, + { url = "https://files.pythonhosted.org/packages/22/59/f8f2e950eb4f1a5a3883e198dca514b9d475415cb6cd7b78b9213a0dd45a/caio-0.9.25-cp313-cp313-manylinux_2_34_x86_64.whl", hash = "sha256:9ed3cfb28c0e99fec5e208c934e5c157d0866aa9c32aa4dc5e9b6034af6286b7", size = 80243, upload-time = "2026-03-04T22:08:26.449Z" }, + { url = "https://files.pythonhosted.org/packages/69/ca/a08fdc7efdcc24e6a6131a93c85be1f204d41c58f474c42b0670af8c016b/caio-0.9.25-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:fab6078b9348e883c80a5e14b382e6ad6aabbc4429ca034e76e730cf464269db", size = 36978, upload-time = "2025-12-26T15:21:41.055Z" }, + { url = "https://files.pythonhosted.org/packages/5e/6c/d4d24f65e690213c097174d26eda6831f45f4734d9d036d81790a27e7b78/caio-0.9.25-cp314-cp314-manylinux2010_x86_64.manylinux2014_x86_64.manylinux_2_12_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:44a6b58e52d488c75cfaa5ecaa404b2b41cc965e6c417e03251e868ecd5b6d77", size = 81832, upload-time = "2025-12-26T15:22:22.757Z" }, + { url = "https://files.pythonhosted.org/packages/87/a4/e534cf7d2d0e8d880e25dd61e8d921ffcfe15bd696734589826f5a2df727/caio-0.9.25-cp314-cp314-manylinux_2_34_aarch64.whl", hash = "sha256:628a630eb7fb22381dd8e3c8ab7f59e854b9c806639811fc3f4310c6bd711d79", size = 81565, upload-time = "2026-03-04T22:08:27.483Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ed/bf81aeac1d290017e5e5ac3e880fd56ee15e50a6d0353986799d1bc5cfd5/caio-0.9.25-cp314-cp314-manylinux_2_34_x86_64.whl", hash = "sha256:0ba16aa605ccb174665357fc729cf500679c2d94d5f1458a6f0d5ca48f2060a7", size = 80071, upload-time = "2026-03-04T22:08:28.751Z" }, + { url = "https://files.pythonhosted.org/packages/86/93/1f76c8d1bafe3b0614e06b2195784a3765bbf7b0a067661af9e2dd47fc33/caio-0.9.25-py3-none-any.whl", hash = "sha256:06c0bb02d6b929119b1cfbe1ca403c768b2013a369e2db46bfa2a5761cf82e40", size = 19087, upload-time = "2025-12-26T15:22:00.221Z" }, +] + +[[package]] +name = "certifi" +version = "2026.2.25" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/af/2d/7bf41579a8986e348fa033a31cdd0e4121114f6bce2457e8876010b092dd/certifi-2026.2.25.tar.gz", hash = "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7", size = 155029, upload-time = "2026-02-25T02:54:17.342Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl", hash = "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa", size = 153684, upload-time = "2026-02-25T02:54:15.766Z" }, +] + +[[package]] +name = "cffi" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser", marker = "implementation_name != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588, upload-time = "2025-09-08T23:24:04.541Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230, upload-time = "2025-09-08T23:23:00.879Z" }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043, upload-time = "2025-09-08T23:23:02.231Z" }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446, upload-time = "2025-09-08T23:23:03.472Z" }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101, upload-time = "2025-09-08T23:23:04.792Z" }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948, upload-time = "2025-09-08T23:23:06.127Z" }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422, upload-time = "2025-09-08T23:23:07.753Z" }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499, upload-time = "2025-09-08T23:23:09.648Z" }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928, upload-time = "2025-09-08T23:23:10.928Z" }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302, upload-time = "2025-09-08T23:23:12.42Z" }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909, upload-time = "2025-09-08T23:23:14.32Z" }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402, upload-time = "2025-09-08T23:23:15.535Z" }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780, upload-time = "2025-09-08T23:23:16.761Z" }, + { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320, upload-time = "2025-09-08T23:23:18.087Z" }, + { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487, upload-time = "2025-09-08T23:23:19.622Z" }, + { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" }, + { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" }, + { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" }, + { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" }, + { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" }, + { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328, upload-time = "2025-09-08T23:23:44.61Z" }, + { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650, upload-time = "2025-09-08T23:23:45.848Z" }, + { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687, upload-time = "2025-09-08T23:23:47.105Z" }, + { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773, upload-time = "2025-09-08T23:23:29.347Z" }, + { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013, upload-time = "2025-09-08T23:23:30.63Z" }, + { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" }, + { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" }, + { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" }, + { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" }, + { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" }, + { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" }, + { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487, upload-time = "2025-09-08T23:23:40.423Z" }, + { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726, upload-time = "2025-09-08T23:23:41.742Z" }, + { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195, upload-time = "2025-09-08T23:23:43.004Z" }, +] + +[[package]] +name = "click" +version = "8.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3d/fa/656b739db8587d7b5dfa22e22ed02566950fbfbcdc20311993483657a5c0/click-8.3.1.tar.gz", hash = "sha256:12ff4785d337a1bb490bb7e9c2b1ee5da3112e94a8622f26a6c77f5d2fc6842a", size = 295065, upload-time = "2025-11-15T20:45:42.706Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/98/78/01c019cdb5d6498122777c1a43056ebb3ebfeef2076d9d026bfe15583b2b/click-8.3.1-py3-none-any.whl", hash = "sha256:981153a64e25f12d547d3426c367a4857371575ee7ad18df2a6183ab0545b2a6", size = 108274, upload-time = "2025-11-15T20:45:41.139Z" }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, +] + +[[package]] +name = "cryptography" +version = "46.0.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/60/04/ee2a9e8542e4fa2773b81771ff8349ff19cdd56b7258a0cc442639052edb/cryptography-46.0.5.tar.gz", hash = "sha256:abace499247268e3757271b2f1e244b36b06f8515cf27c4d49468fc9eb16e93d", size = 750064, upload-time = "2026-02-10T19:18:38.255Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f7/81/b0bb27f2ba931a65409c6b8a8b358a7f03c0e46eceacddff55f7c84b1f3b/cryptography-46.0.5-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:351695ada9ea9618b3500b490ad54c739860883df6c1f555e088eaf25b1bbaad", size = 7176289, upload-time = "2026-02-10T19:17:08.274Z" }, + { url = "https://files.pythonhosted.org/packages/ff/9e/6b4397a3e3d15123de3b1806ef342522393d50736c13b20ec4c9ea6693a6/cryptography-46.0.5-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c18ff11e86df2e28854939acde2d003f7984f721eba450b56a200ad90eeb0e6b", size = 4275637, upload-time = "2026-02-10T19:17:10.53Z" }, + { url = "https://files.pythonhosted.org/packages/63/e7/471ab61099a3920b0c77852ea3f0ea611c9702f651600397ac567848b897/cryptography-46.0.5-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4d7e3d356b8cd4ea5aff04f129d5f66ebdc7b6f8eae802b93739ed520c47c79b", size = 4424742, upload-time = "2026-02-10T19:17:12.388Z" }, + { url = "https://files.pythonhosted.org/packages/37/53/a18500f270342d66bf7e4d9f091114e31e5ee9e7375a5aba2e85a91e0044/cryptography-46.0.5-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:50bfb6925eff619c9c023b967d5b77a54e04256c4281b0e21336a130cd7fc263", size = 4277528, upload-time = "2026-02-10T19:17:13.853Z" }, + { url = "https://files.pythonhosted.org/packages/22/29/c2e812ebc38c57b40e7c583895e73c8c5adb4d1e4a0cc4c5a4fdab2b1acc/cryptography-46.0.5-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:803812e111e75d1aa73690d2facc295eaefd4439be1023fefc4995eaea2af90d", size = 4947993, upload-time = "2026-02-10T19:17:15.618Z" }, + { url = "https://files.pythonhosted.org/packages/6b/e7/237155ae19a9023de7e30ec64e5d99a9431a567407ac21170a046d22a5a3/cryptography-46.0.5-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ee190460e2fbe447175cda91b88b84ae8322a104fc27766ad09428754a618ed", size = 4456855, upload-time = "2026-02-10T19:17:17.221Z" }, + { url = "https://files.pythonhosted.org/packages/2d/87/fc628a7ad85b81206738abbd213b07702bcbdada1dd43f72236ef3cffbb5/cryptography-46.0.5-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:f145bba11b878005c496e93e257c1e88f154d278d2638e6450d17e0f31e558d2", size = 3984635, upload-time = "2026-02-10T19:17:18.792Z" }, + { url = "https://files.pythonhosted.org/packages/84/29/65b55622bde135aedf4565dc509d99b560ee4095e56989e815f8fd2aa910/cryptography-46.0.5-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:e9251e3be159d1020c4030bd2e5f84d6a43fe54b6c19c12f51cde9542a2817b2", size = 4277038, upload-time = "2026-02-10T19:17:20.256Z" }, + { url = "https://files.pythonhosted.org/packages/bc/36/45e76c68d7311432741faf1fbf7fac8a196a0a735ca21f504c75d37e2558/cryptography-46.0.5-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:47fb8a66058b80e509c47118ef8a75d14c455e81ac369050f20ba0d23e77fee0", size = 4912181, upload-time = "2026-02-10T19:17:21.825Z" }, + { url = "https://files.pythonhosted.org/packages/6d/1a/c1ba8fead184d6e3d5afcf03d569acac5ad063f3ac9fb7258af158f7e378/cryptography-46.0.5-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:4c3341037c136030cb46e4b1e17b7418ea4cbd9dd207e4a6f3b2b24e0d4ac731", size = 4456482, upload-time = "2026-02-10T19:17:25.133Z" }, + { url = "https://files.pythonhosted.org/packages/f9/e5/3fb22e37f66827ced3b902cf895e6a6bc1d095b5b26be26bd13c441fdf19/cryptography-46.0.5-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:890bcb4abd5a2d3f852196437129eb3667d62630333aacc13dfd470fad3aaa82", size = 4405497, upload-time = "2026-02-10T19:17:26.66Z" }, + { url = "https://files.pythonhosted.org/packages/1a/df/9d58bb32b1121a8a2f27383fabae4d63080c7ca60b9b5c88be742be04ee7/cryptography-46.0.5-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:80a8d7bfdf38f87ca30a5391c0c9ce4ed2926918e017c29ddf643d0ed2778ea1", size = 4667819, upload-time = "2026-02-10T19:17:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/ea/ed/325d2a490c5e94038cdb0117da9397ece1f11201f425c4e9c57fe5b9f08b/cryptography-46.0.5-cp311-abi3-win32.whl", hash = "sha256:60ee7e19e95104d4c03871d7d7dfb3d22ef8a9b9c6778c94e1c8fcc8365afd48", size = 3028230, upload-time = "2026-02-10T19:17:30.518Z" }, + { url = "https://files.pythonhosted.org/packages/e9/5a/ac0f49e48063ab4255d9e3b79f5def51697fce1a95ea1370f03dc9db76f6/cryptography-46.0.5-cp311-abi3-win_amd64.whl", hash = "sha256:38946c54b16c885c72c4f59846be9743d699eee2b69b6988e0a00a01f46a61a4", size = 3480909, upload-time = "2026-02-10T19:17:32.083Z" }, + { url = "https://files.pythonhosted.org/packages/00/13/3d278bfa7a15a96b9dc22db5a12ad1e48a9eb3d40e1827ef66a5df75d0d0/cryptography-46.0.5-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:94a76daa32eb78d61339aff7952ea819b1734b46f73646a07decb40e5b3448e2", size = 7119287, upload-time = "2026-02-10T19:17:33.801Z" }, + { url = "https://files.pythonhosted.org/packages/67/c8/581a6702e14f0898a0848105cbefd20c058099e2c2d22ef4e476dfec75d7/cryptography-46.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5be7bf2fb40769e05739dd0046e7b26f9d4670badc7b032d6ce4db64dddc0678", size = 4265728, upload-time = "2026-02-10T19:17:35.569Z" }, + { url = "https://files.pythonhosted.org/packages/dd/4a/ba1a65ce8fc65435e5a849558379896c957870dd64fecea97b1ad5f46a37/cryptography-46.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fe346b143ff9685e40192a4960938545c699054ba11d4f9029f94751e3f71d87", size = 4408287, upload-time = "2026-02-10T19:17:36.938Z" }, + { url = "https://files.pythonhosted.org/packages/f8/67/8ffdbf7b65ed1ac224d1c2df3943553766914a8ca718747ee3871da6107e/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c69fd885df7d089548a42d5ec05be26050ebcd2283d89b3d30676eb32ff87dee", size = 4270291, upload-time = "2026-02-10T19:17:38.748Z" }, + { url = "https://files.pythonhosted.org/packages/f8/e5/f52377ee93bc2f2bba55a41a886fd208c15276ffbd2569f2ddc89d50e2c5/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:8293f3dea7fc929ef7240796ba231413afa7b68ce38fd21da2995549f5961981", size = 4927539, upload-time = "2026-02-10T19:17:40.241Z" }, + { url = "https://files.pythonhosted.org/packages/3b/02/cfe39181b02419bbbbcf3abdd16c1c5c8541f03ca8bda240debc467d5a12/cryptography-46.0.5-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:1abfdb89b41c3be0365328a410baa9df3ff8a9110fb75e7b52e66803ddabc9a9", size = 4442199, upload-time = "2026-02-10T19:17:41.789Z" }, + { url = "https://files.pythonhosted.org/packages/c0/96/2fcaeb4873e536cf71421a388a6c11b5bc846e986b2b069c79363dc1648e/cryptography-46.0.5-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:d66e421495fdb797610a08f43b05269e0a5ea7f5e652a89bfd5a7d3c1dee3648", size = 3960131, upload-time = "2026-02-10T19:17:43.379Z" }, + { url = "https://files.pythonhosted.org/packages/d8/d2/b27631f401ddd644e94c5cf33c9a4069f72011821cf3dc7309546b0642a0/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:4e817a8920bfbcff8940ecfd60f23d01836408242b30f1a708d93198393a80b4", size = 4270072, upload-time = "2026-02-10T19:17:45.481Z" }, + { url = "https://files.pythonhosted.org/packages/f4/a7/60d32b0370dae0b4ebe55ffa10e8599a2a59935b5ece1b9f06edb73abdeb/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:68f68d13f2e1cb95163fa3b4db4bf9a159a418f5f6e7242564fc75fcae667fd0", size = 4892170, upload-time = "2026-02-10T19:17:46.997Z" }, + { url = "https://files.pythonhosted.org/packages/d2/b9/cf73ddf8ef1164330eb0b199a589103c363afa0cf794218c24d524a58eab/cryptography-46.0.5-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:a3d1fae9863299076f05cb8a778c467578262fae09f9dc0ee9b12eb4268ce663", size = 4441741, upload-time = "2026-02-10T19:17:48.661Z" }, + { url = "https://files.pythonhosted.org/packages/5f/eb/eee00b28c84c726fe8fa0158c65afe312d9c3b78d9d01daf700f1f6e37ff/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4143987a42a2397f2fc3b4d7e3a7d313fbe684f67ff443999e803dd75a76826", size = 4396728, upload-time = "2026-02-10T19:17:50.058Z" }, + { url = "https://files.pythonhosted.org/packages/65/f4/6bc1a9ed5aef7145045114b75b77c2a8261b4d38717bd8dea111a63c3442/cryptography-46.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:7d731d4b107030987fd61a7f8ab512b25b53cef8f233a97379ede116f30eb67d", size = 4652001, upload-time = "2026-02-10T19:17:51.54Z" }, + { url = "https://files.pythonhosted.org/packages/86/ef/5d00ef966ddd71ac2e6951d278884a84a40ffbd88948ef0e294b214ae9e4/cryptography-46.0.5-cp314-cp314t-win32.whl", hash = "sha256:c3bcce8521d785d510b2aad26ae2c966092b7daa8f45dd8f44734a104dc0bc1a", size = 3003637, upload-time = "2026-02-10T19:17:52.997Z" }, + { url = "https://files.pythonhosted.org/packages/b7/57/f3f4160123da6d098db78350fdfd9705057aad21de7388eacb2401dceab9/cryptography-46.0.5-cp314-cp314t-win_amd64.whl", hash = "sha256:4d8ae8659ab18c65ced284993c2265910f6c9e650189d4e3f68445ef82a810e4", size = 3469487, upload-time = "2026-02-10T19:17:54.549Z" }, + { url = "https://files.pythonhosted.org/packages/e2/fa/a66aa722105ad6a458bebd64086ca2b72cdd361fed31763d20390f6f1389/cryptography-46.0.5-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:4108d4c09fbbf2789d0c926eb4152ae1760d5a2d97612b92d508d96c861e4d31", size = 7170514, upload-time = "2026-02-10T19:17:56.267Z" }, + { url = "https://files.pythonhosted.org/packages/0f/04/c85bdeab78c8bc77b701bf0d9bdcf514c044e18a46dcff330df5448631b0/cryptography-46.0.5-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7d1f30a86d2757199cb2d56e48cce14deddf1f9c95f1ef1b64ee91ea43fe2e18", size = 4275349, upload-time = "2026-02-10T19:17:58.419Z" }, + { url = "https://files.pythonhosted.org/packages/5c/32/9b87132a2f91ee7f5223b091dc963055503e9b442c98fc0b8a5ca765fab0/cryptography-46.0.5-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:039917b0dc418bb9f6edce8a906572d69e74bd330b0b3fea4f79dab7f8ddd235", size = 4420667, upload-time = "2026-02-10T19:18:00.619Z" }, + { url = "https://files.pythonhosted.org/packages/a1/a6/a7cb7010bec4b7c5692ca6f024150371b295ee1c108bdc1c400e4c44562b/cryptography-46.0.5-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ba2a27ff02f48193fc4daeadf8ad2590516fa3d0adeeb34336b96f7fa64c1e3a", size = 4276980, upload-time = "2026-02-10T19:18:02.379Z" }, + { url = "https://files.pythonhosted.org/packages/8e/7c/c4f45e0eeff9b91e3f12dbd0e165fcf2a38847288fcfd889deea99fb7b6d/cryptography-46.0.5-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:61aa400dce22cb001a98014f647dc21cda08f7915ceb95df0c9eaf84b4b6af76", size = 4939143, upload-time = "2026-02-10T19:18:03.964Z" }, + { url = "https://files.pythonhosted.org/packages/37/19/e1b8f964a834eddb44fa1b9a9976f4e414cbb7aa62809b6760c8803d22d1/cryptography-46.0.5-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3ce58ba46e1bc2aac4f7d9290223cead56743fa6ab94a5d53292ffaac6a91614", size = 4453674, upload-time = "2026-02-10T19:18:05.588Z" }, + { url = "https://files.pythonhosted.org/packages/db/ed/db15d3956f65264ca204625597c410d420e26530c4e2943e05a0d2f24d51/cryptography-46.0.5-cp38-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:420d0e909050490d04359e7fdb5ed7e667ca5c3c402b809ae2563d7e66a92229", size = 3978801, upload-time = "2026-02-10T19:18:07.167Z" }, + { url = "https://files.pythonhosted.org/packages/41/e2/df40a31d82df0a70a0daf69791f91dbb70e47644c58581d654879b382d11/cryptography-46.0.5-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:582f5fcd2afa31622f317f80426a027f30dc792e9c80ffee87b993200ea115f1", size = 4276755, upload-time = "2026-02-10T19:18:09.813Z" }, + { url = "https://files.pythonhosted.org/packages/33/45/726809d1176959f4a896b86907b98ff4391a8aa29c0aaaf9450a8a10630e/cryptography-46.0.5-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:bfd56bb4b37ed4f330b82402f6f435845a5f5648edf1ad497da51a8452d5d62d", size = 4901539, upload-time = "2026-02-10T19:18:11.263Z" }, + { url = "https://files.pythonhosted.org/packages/99/0f/a3076874e9c88ecb2ecc31382f6e7c21b428ede6f55aafa1aa272613e3cd/cryptography-46.0.5-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:a3d507bb6a513ca96ba84443226af944b0f7f47dcc9a399d110cd6146481d24c", size = 4452794, upload-time = "2026-02-10T19:18:12.914Z" }, + { url = "https://files.pythonhosted.org/packages/02/ef/ffeb542d3683d24194a38f66ca17c0a4b8bf10631feef44a7ef64e631b1a/cryptography-46.0.5-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9f16fbdf4da055efb21c22d81b89f155f02ba420558db21288b3d0035bafd5f4", size = 4404160, upload-time = "2026-02-10T19:18:14.375Z" }, + { url = "https://files.pythonhosted.org/packages/96/93/682d2b43c1d5f1406ed048f377c0fc9fc8f7b0447a478d5c65ab3d3a66eb/cryptography-46.0.5-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ced80795227d70549a411a4ab66e8ce307899fad2220ce5ab2f296e687eacde9", size = 4667123, upload-time = "2026-02-10T19:18:15.886Z" }, + { url = "https://files.pythonhosted.org/packages/45/2d/9c5f2926cb5300a8eefc3f4f0b3f3df39db7f7ce40c8365444c49363cbda/cryptography-46.0.5-cp38-abi3-win32.whl", hash = "sha256:02f547fce831f5096c9a567fd41bc12ca8f11df260959ecc7c3202555cc47a72", size = 3010220, upload-time = "2026-02-10T19:18:17.361Z" }, + { url = "https://files.pythonhosted.org/packages/48/ef/0c2f4a8e31018a986949d34a01115dd057bf536905dca38897bacd21fac3/cryptography-46.0.5-cp38-abi3-win_amd64.whl", hash = "sha256:556e106ee01aa13484ce9b0239bca667be5004efb0aabbed28d353df86445595", size = 3467050, upload-time = "2026-02-10T19:18:18.899Z" }, +] + +[[package]] +name = "cyclopts" +version = "4.7.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "docstring-parser" }, + { name = "rich" }, + { name = "rich-rst" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/a7/61825c9c46dd9d3d2a231c9792753fc3fe2822a90734a619b1a23ed0f05f/cyclopts-4.7.0.tar.gz", hash = "sha256:1d0fd440b8d21a55d14f830033eb1ac156933424df3e90afeea34cfb3ed73822", size = 163447, upload-time = "2026-03-05T02:57:49.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5b/08/a631a99df0e9f49c73ec682a9d1e05e5887cf79f04076792aacb4caac6b2/cyclopts-4.7.0-py3-none-any.whl", hash = "sha256:c659d930797a8470f2914a8f8f8be263b339cb6ffb6593b4a59fa9d84b8e0e38", size = 201270, upload-time = "2026-03-05T02:57:50.988Z" }, +] + +[[package]] +name = "dnspython" +version = "2.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8c/8b/57666417c0f90f08bcafa776861060426765fdb422eb10212086fb811d26/dnspython-2.8.0.tar.gz", hash = "sha256:181d3c6996452cb1189c4046c61599b84a5a86e099562ffde77d26984ff26d0f", size = 368251, upload-time = "2025-09-07T18:58:00.022Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ba/5a/18ad964b0086c6e62e2e7500f7edc89e3faa45033c71c1893d34eed2b2de/dnspython-2.8.0-py3-none-any.whl", hash = "sha256:01d9bbc4a2d76bf0db7c1f729812ded6d912bd318d3b1cf81d30c0f845dbf3af", size = 331094, upload-time = "2025-09-07T18:57:58.071Z" }, +] + +[[package]] +name = "docstring-parser" +version = "0.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b2/9d/c3b43da9515bd270df0f80548d9944e389870713cc1fe2b8fb35fe2bcefd/docstring_parser-0.17.0.tar.gz", hash = "sha256:583de4a309722b3315439bb31d64ba3eebada841f2e2cee23b99df001434c912", size = 27442, upload-time = "2025-07-21T07:35:01.868Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl", hash = "sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708", size = 36896, upload-time = "2025-07-21T07:35:00.684Z" }, +] + +[[package]] +name = "docutils" +version = "0.22.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ae/b6/03bb70946330e88ffec97aefd3ea75ba575cb2e762061e0e62a213befee8/docutils-0.22.4.tar.gz", hash = "sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968", size = 2291750, upload-time = "2025-12-18T19:00:26.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/10/5da547df7a391dcde17f59520a231527b8571e6f46fc8efb02ccb370ab12/docutils-0.22.4-py3-none-any.whl", hash = "sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de", size = 633196, upload-time = "2025-12-18T19:00:18.077Z" }, +] + +[[package]] +name = "email-validator" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "dnspython" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f5/22/900cb125c76b7aaa450ce02fd727f452243f2e91a61af068b40adba60ea9/email_validator-2.3.0.tar.gz", hash = "sha256:9fc05c37f2f6cf439ff414f8fc46d917929974a82244c20eb10231ba60c54426", size = 51238, upload-time = "2025-08-26T13:09:06.831Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/de/15/545e2b6cf2e3be84bc1ed85613edd75b8aea69807a71c26f4ca6a9258e82/email_validator-2.3.0-py3-none-any.whl", hash = "sha256:80f13f623413e6b197ae73bb10bf4eb0908faf509ad8362c5edeb0be7fd450b4", size = 35604, upload-time = "2025-08-26T13:09:05.858Z" }, +] + +[[package]] +name = "exceptiongroup" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", size = 30371, upload-time = "2025-11-21T23:01:54.787Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/0e/97c33bf5009bdbac74fd2beace167cab3f978feb69cc36f1ef79360d6c4e/exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598", size = 16740, upload-time = "2025-11-21T23:01:53.443Z" }, +] + +[[package]] +name = "fastmcp" +version = "3.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "authlib" }, + { name = "cyclopts" }, + { name = "exceptiongroup" }, + { name = "httpx" }, + { name = "jsonref" }, + { name = "jsonschema-path" }, + { name = "mcp" }, + { name = "openapi-pydantic" }, + { name = "opentelemetry-api" }, + { name = "packaging" }, + { name = "platformdirs" }, + { name = "py-key-value-aio", extra = ["filetree", "keyring", "memory"] }, + { name = "pydantic", extra = ["email"] }, + { name = "pyperclip" }, + { name = "python-dotenv" }, + { name = "pyyaml" }, + { name = "rich" }, + { name = "uncalled-for" }, + { name = "uvicorn" }, + { name = "watchfiles" }, + { name = "websockets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/70/862026c4589441f86ad3108f05bfb2f781c6b322ad60a982f40b303b47d7/fastmcp-3.1.0.tar.gz", hash = "sha256:e25264794c734b9977502a51466961eeecff92a0c2f3b49c40c070993628d6d0", size = 17347083, upload-time = "2026-03-03T02:43:11.283Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/17/07/516f5b20d88932e5a466c2216b628e5358a71b3a9f522215607c3281de05/fastmcp-3.1.0-py3-none-any.whl", hash = "sha256:b1f73b56fd3b0cb2bd9e2a144fc650d5cc31587ed129d996db7710e464ae8010", size = 633749, upload-time = "2026-03-03T02:43:09.06Z" }, +] + +[[package]] +name = "h11" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" }, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" }, +] + +[[package]] +name = "httpx-sse" +version = "0.4.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/4c/751061ffa58615a32c31b2d82e8482be8dd4a89154f003147acee90f2be9/httpx_sse-0.4.3.tar.gz", hash = "sha256:9b1ed0127459a66014aec3c56bebd93da3c1bc8bb6618c8082039a44889a755d", size = 15943, upload-time = "2025-10-10T21:48:22.271Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/fd/6668e5aec43ab844de6fc74927e155a3b37bf40d7c3790e49fc0406b6578/httpx_sse-0.4.3-py3-none-any.whl", hash = "sha256:0ac1c9fe3c0afad2e0ebb25a934a59f4c7823b60792691f779fad2c5568830fc", size = 8960, upload-time = "2025-10-10T21:48:21.158Z" }, +] + +[[package]] +name = "idna" +version = "3.11" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6f/6d/0703ccc57f3a7233505399edb88de3cbd678da106337b9fcde432b65ed60/idna-3.11.tar.gz", hash = "sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902", size = 194582, upload-time = "2025-10-12T14:55:20.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl", hash = "sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea", size = 71008, upload-time = "2025-10-12T14:55:18.883Z" }, +] + +[[package]] +name = "importlib-metadata" +version = "8.7.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "zipp" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f3/49/3b30cad09e7771a4982d9975a8cbf64f00d4a1ececb53297f1d9a7be1b10/importlib_metadata-8.7.1.tar.gz", hash = "sha256:49fef1ae6440c182052f407c8d34a68f72efc36db9ca90dc0113398f2fdde8bb", size = 57107, upload-time = "2025-12-21T10:00:19.278Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/5e/f8e9a1d23b9c20a551a8a02ea3637b4642e22c2626e3a13a9a29cdea99eb/importlib_metadata-8.7.1-py3-none-any.whl", hash = "sha256:5a1f80bf1daa489495071efbb095d75a634cf28a8bc299581244063b53176151", size = 27865, upload-time = "2025-12-21T10:00:18.329Z" }, +] + +[[package]] +name = "jaraco-classes" +version = "3.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "more-itertools" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/c0/ed4a27bc5571b99e3cff68f8a9fa5b56ff7df1c2251cc715a652ddd26402/jaraco.classes-3.4.0.tar.gz", hash = "sha256:47a024b51d0239c0dd8c8540c6c7f484be3b8fcf0b2d85c13825780d3b3f3acd", size = 11780, upload-time = "2024-03-31T07:27:36.643Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl", hash = "sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790", size = 6777, upload-time = "2024-03-31T07:27:34.792Z" }, +] + +[[package]] +name = "jaraco-context" +version = "6.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cb/9c/a788f5bb29c61e456b8ee52ce76dbdd32fd72cd73dd67bc95f42c7a8d13c/jaraco_context-6.1.0.tar.gz", hash = "sha256:129a341b0a85a7db7879e22acd66902fda67882db771754574338898b2d5d86f", size = 15850, upload-time = "2026-01-13T02:53:53.847Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/48/aa685dbf1024c7bd82bede569e3a85f82c32fd3d79ba5fea578f0159571a/jaraco_context-6.1.0-py3-none-any.whl", hash = "sha256:a43b5ed85815223d0d3cfdb6d7ca0d2bc8946f28f30b6f3216bda070f68badda", size = 7065, upload-time = "2026-01-13T02:53:53.031Z" }, +] + +[[package]] +name = "jaraco-functools" +version = "4.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "more-itertools" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0f/27/056e0638a86749374d6f57d0b0db39f29509cce9313cf91bdc0ac4d91084/jaraco_functools-4.4.0.tar.gz", hash = "sha256:da21933b0417b89515562656547a77b4931f98176eb173644c0d35032a33d6bb", size = 19943, upload-time = "2025-12-21T09:29:43.6Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/c4/813bb09f0985cb21e959f21f2464169eca882656849adf727ac7bb7e1767/jaraco_functools-4.4.0-py3-none-any.whl", hash = "sha256:9eec1e36f45c818d9bf307c8948eb03b2b56cd44087b3cdc989abca1f20b9176", size = 10481, upload-time = "2025-12-21T09:29:42.27Z" }, +] + +[[package]] +name = "jeepney" +version = "0.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/6f/357efd7602486741aa73ffc0617fb310a29b588ed0fd69c2399acbb85b0c/jeepney-0.9.0.tar.gz", hash = "sha256:cf0e9e845622b81e4a28df94c40345400256ec608d0e55bb8a3feaa9163f5732", size = 106758, upload-time = "2025-02-27T18:51:01.684Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl", hash = "sha256:97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683", size = 49010, upload-time = "2025-02-27T18:51:00.104Z" }, +] + +[[package]] +name = "jsonref" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/0d/c1f3277e90ccdb50d33ed5ba1ec5b3f0a242ed8c1b1a85d3afeb68464dca/jsonref-1.1.0.tar.gz", hash = "sha256:32fe8e1d85af0fdefbebce950af85590b22b60f9e95443176adbde4e1ecea552", size = 8814, upload-time = "2023-01-16T16:10:04.455Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/ec/e1db9922bceb168197a558a2b8c03a7963f1afe93517ddd3cf99f202f996/jsonref-1.1.0-py3-none-any.whl", hash = "sha256:590dc7773df6c21cbf948b5dac07a72a251db28b0238ceecce0a2abfa8ec30a9", size = 9425, upload-time = "2023-01-16T16:10:02.255Z" }, +] + +[[package]] +name = "jsonschema" +version = "4.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/fc/e067678238fa451312d4c62bf6e6cf5ec56375422aee02f9cb5f909b3047/jsonschema-4.26.0.tar.gz", hash = "sha256:0c26707e2efad8aa1bfc5b7ce170f3fccc2e4918ff85989ba9ffa9facb2be326", size = 366583, upload-time = "2026-01-07T13:41:07.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630, upload-time = "2026-01-07T13:41:05.306Z" }, +] + +[[package]] +name = "jsonschema-path" +version = "0.4.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pathable" }, + { name = "pyyaml" }, + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/8a/7e6102f2b8bdc6705a9eb5294f8f6f9ccd3a8420e8e8e19671d1dd773251/jsonschema_path-0.4.5.tar.gz", hash = "sha256:c6cd7d577ae290c7defd4f4029e86fdb248ca1bd41a07557795b3c95e5144918", size = 15113, upload-time = "2026-03-03T09:56:46.87Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/d5/4e96c44f6c1ea3d812cf5391d81a4f5abaa540abf8d04ecd7f66e0ed11df/jsonschema_path-0.4.5-py3-none-any.whl", hash = "sha256:7d77a2c3f3ec569a40efe5c5f942c44c1af2a6f96fe0866794c9ef5b8f87fd65", size = 19368, upload-time = "2026-03-03T09:56:45.39Z" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/74/a633ee74eb36c44aa6d1095e7cc5569bebf04342ee146178e2d36600708b/jsonschema_specifications-2025.9.1.tar.gz", hash = "sha256:b540987f239e745613c7a9176f3edb72b832a4ac465cf02712288397832b5e8d", size = 32855, upload-time = "2025-09-08T01:34:59.186Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl", hash = "sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe", size = 18437, upload-time = "2025-09-08T01:34:57.871Z" }, +] + +[[package]] +name = "keyring" +version = "25.7.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jaraco-classes" }, + { name = "jaraco-context" }, + { name = "jaraco-functools" }, + { name = "jeepney", marker = "sys_platform == 'linux'" }, + { name = "pywin32-ctypes", marker = "sys_platform == 'win32'" }, + { name = "secretstorage", marker = "sys_platform == 'linux'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/43/4b/674af6ef2f97d56f0ab5153bf0bfa28ccb6c3ed4d1babf4305449668807b/keyring-25.7.0.tar.gz", hash = "sha256:fe01bd85eb3f8fb3dd0405defdeac9a5b4f6f0439edbb3149577f244a2e8245b", size = 63516, upload-time = "2025-11-16T16:26:09.482Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl", hash = "sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f", size = 39160, upload-time = "2025-11-16T16:26:08.402Z" }, +] + +[[package]] +name = "markdown-it-py" +version = "4.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/f5/4ec618ed16cc4f8fb3b701563655a69816155e79e24a17b651541804721d/markdown_it_py-4.0.0.tar.gz", hash = "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3", size = 73070, upload-time = "2025-08-11T12:57:52.854Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321, upload-time = "2025-08-11T12:57:51.923Z" }, +] + +[[package]] +name = "mcp" +version = "1.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "httpx" }, + { name = "httpx-sse" }, + { name = "jsonschema" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pyjwt", extra = ["crypto"] }, + { name = "python-multipart" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "sse-starlette" }, + { name = "starlette" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, + { name = "uvicorn", marker = "sys_platform != 'emscripten'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/6d/62e76bbb8144d6ed86e202b5edd8a4cb631e7c8130f3f4893c3f90262b10/mcp-1.26.0.tar.gz", hash = "sha256:db6e2ef491eecc1a0d93711a76f28dec2e05999f93afd48795da1c1137142c66", size = 608005, upload-time = "2026-01-24T19:40:32.468Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/d9/eaa1f80170d2b7c5ba23f3b59f766f3a0bb41155fbc32a69adfa1adaaef9/mcp-1.26.0-py3-none-any.whl", hash = "sha256:904a21c33c25aa98ddbeb47273033c435e595bbacfdb177f4bd87f6dceebe1ca", size = 233615, upload-time = "2026-01-24T19:40:30.652Z" }, +] + +[[package]] +name = "mcp-server" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "fastmcp" }, + { name = "httpx" }, +] + +[package.metadata] +requires-dist = [ + { name = "fastmcp", specifier = ">=3.1.0" }, + { name = "httpx", specifier = ">=0.28.1" }, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729, upload-time = "2022-08-14T12:40:10.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, +] + +[[package]] +name = "more-itertools" +version = "10.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ea/5d/38b681d3fce7a266dd9ab73c66959406d565b3e85f21d5e66e1181d93721/more_itertools-10.8.0.tar.gz", hash = "sha256:f638ddf8a1a0d134181275fb5d58b086ead7c6a72429ad725c67503f13ba30bd", size = 137431, upload-time = "2025-09-02T15:23:11.018Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/8e/469e5a4a2f5855992e425f3cb33804cc07bf18d48f2db061aec61ce50270/more_itertools-10.8.0-py3-none-any.whl", hash = "sha256:52d4362373dcf7c52546bc4af9a86ee7c4579df9a8dc268be0a2f949d376cc9b", size = 69667, upload-time = "2025-09-02T15:23:09.635Z" }, +] + +[[package]] +name = "openapi-pydantic" +version = "0.5.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/02/2e/58d83848dd1a79cb92ed8e63f6ba901ca282c5f09d04af9423ec26c56fd7/openapi_pydantic-0.5.1.tar.gz", hash = "sha256:ff6835af6bde7a459fb93eb93bb92b8749b754fc6e51b2f1590a19dc3005ee0d", size = 60892, upload-time = "2025-01-08T19:29:27.083Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/cf/03675d8bd8ecbf4445504d8071adab19f5f993676795708e36402ab38263/openapi_pydantic-0.5.1-py3-none-any.whl", hash = "sha256:a3a09ef4586f5bd760a8df7f43028b60cafb6d9f61de2acba9574766255ab146", size = 96381, upload-time = "2025-01-08T19:29:25.275Z" }, +] + +[[package]] +name = "opentelemetry-api" +version = "1.40.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "importlib-metadata" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2c/1d/4049a9e8698361cc1a1aa03a6c59e4fa4c71e0c0f94a30f988a6876a2ae6/opentelemetry_api-1.40.0.tar.gz", hash = "sha256:159be641c0b04d11e9ecd576906462773eb97ae1b657730f0ecf64d32071569f", size = 70851, upload-time = "2026-03-04T14:17:21.555Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5f/bf/93795954016c522008da367da292adceed71cca6ee1717e1d64c83089099/opentelemetry_api-1.40.0-py3-none-any.whl", hash = "sha256:82dd69331ae74b06f6a874704be0cfaa49a1650e1537d4a813b86ecef7d0ecf9", size = 68676, upload-time = "2026-03-04T14:17:01.24Z" }, +] + +[[package]] +name = "packaging" +version = "26.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/65/ee/299d360cdc32edc7d2cf530f3accf79c4fca01e96ffc950d8a52213bd8e4/packaging-26.0.tar.gz", hash = "sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4", size = 143416, upload-time = "2026-01-21T20:50:39.064Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366, upload-time = "2026-01-21T20:50:37.788Z" }, +] + +[[package]] +name = "pathable" +version = "0.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/55/b748445cb4ea6b125626f15379be7c96d1035d4fa3e8fee362fa92298abf/pathable-0.5.0.tar.gz", hash = "sha256:d81938348a1cacb525e7c75166270644782c0fb9c8cecc16be033e71427e0ef1", size = 16655, upload-time = "2026-02-20T08:47:00.748Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/52/96/5a770e5c461462575474468e5af931cff9de036e7c2b4fea23c1c58d2cbe/pathable-0.5.0-py3-none-any.whl", hash = "sha256:646e3d09491a6351a0c82632a09c02cdf70a252e73196b36d8a15ba0a114f0a6", size = 16867, upload-time = "2026-02-20T08:46:59.536Z" }, +] + +[[package]] +name = "platformdirs" +version = "4.9.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/04/fea538adf7dbbd6d186f551d595961e564a3b6715bdf276b477460858672/platformdirs-4.9.2.tar.gz", hash = "sha256:9a33809944b9db043ad67ca0db94b14bf452cc6aeaac46a88ea55b26e2e9d291", size = 28394, upload-time = "2026-02-16T03:56:10.574Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/48/31/05e764397056194206169869b50cf2fee4dbbbc71b344705b9c0d878d4d8/platformdirs-4.9.2-py3-none-any.whl", hash = "sha256:9170634f126f8efdae22fb58ae8a0eaa86f38365bc57897a6c4f781d1f5875bd", size = 21168, upload-time = "2026-02-16T03:56:08.891Z" }, +] + +[[package]] +name = "py-key-value-aio" +version = "0.4.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beartype" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/04/3c/0397c072a38d4bc580994b42e0c90c5f44f679303489e4376289534735e5/py_key_value_aio-0.4.4.tar.gz", hash = "sha256:e3012e6243ed7cc09bb05457bd4d03b1ba5c2b1ca8700096b3927db79ffbbe55", size = 92300, upload-time = "2026-02-16T21:21:43.245Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/69/f1b537ee70b7def42d63124a539ed3026a11a3ffc3086947a1ca6e861868/py_key_value_aio-0.4.4-py3-none-any.whl", hash = "sha256:18e17564ecae61b987f909fc2cd41ee2012c84b4b1dcb8c055cf8b4bc1bf3f5d", size = 152291, upload-time = "2026-02-16T21:21:44.241Z" }, +] + +[package.optional-dependencies] +filetree = [ + { name = "aiofile" }, + { name = "anyio" }, +] +keyring = [ + { name = "keyring" }, +] +memory = [ + { name = "cachetools" }, +] + +[[package]] +name = "pycparser" +version = "3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz", hash = "sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29", size = 103492, upload-time = "2026-01-21T14:26:51.89Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172, upload-time = "2026-01-21T14:26:50.693Z" }, +] + +[[package]] +name = "pydantic" +version = "2.12.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/69/44/36f1a6e523abc58ae5f928898e4aca2e0ea509b5aa6f6f392a5d882be928/pydantic-2.12.5.tar.gz", hash = "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49", size = 821591, upload-time = "2025-11-26T15:11:46.471Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl", hash = "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d", size = 463580, upload-time = "2025-11-26T15:11:44.605Z" }, +] + +[package.optional-dependencies] +email = [ + { name = "email-validator" }, +] + +[[package]] +name = "pydantic-core" +version = "2.41.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e", size = 460952, upload-time = "2025-11-04T13:43:49.098Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/06/8806241ff1f70d9939f9af039c6c35f2360cf16e93c2ca76f184e76b1564/pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9", size = 2120403, upload-time = "2025-11-04T13:40:25.248Z" }, + { url = "https://files.pythonhosted.org/packages/94/02/abfa0e0bda67faa65fef1c84971c7e45928e108fe24333c81f3bfe35d5f5/pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34", size = 1896206, upload-time = "2025-11-04T13:40:27.099Z" }, + { url = "https://files.pythonhosted.org/packages/15/df/a4c740c0943e93e6500f9eb23f4ca7ec9bf71b19e608ae5b579678c8d02f/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0", size = 1919307, upload-time = "2025-11-04T13:40:29.806Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e3/6324802931ae1d123528988e0e86587c2072ac2e5394b4bc2bc34b61ff6e/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33", size = 2063258, upload-time = "2025-11-04T13:40:33.544Z" }, + { url = "https://files.pythonhosted.org/packages/c9/d4/2230d7151d4957dd79c3044ea26346c148c98fbf0ee6ebd41056f2d62ab5/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e", size = 2214917, upload-time = "2025-11-04T13:40:35.479Z" }, + { url = "https://files.pythonhosted.org/packages/e6/9f/eaac5df17a3672fef0081b6c1bb0b82b33ee89aa5cec0d7b05f52fd4a1fa/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2", size = 2332186, upload-time = "2025-11-04T13:40:37.436Z" }, + { url = "https://files.pythonhosted.org/packages/cf/4e/35a80cae583a37cf15604b44240e45c05e04e86f9cfd766623149297e971/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586", size = 2073164, upload-time = "2025-11-04T13:40:40.289Z" }, + { url = "https://files.pythonhosted.org/packages/bf/e3/f6e262673c6140dd3305d144d032f7bd5f7497d3871c1428521f19f9efa2/pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d", size = 2179146, upload-time = "2025-11-04T13:40:42.809Z" }, + { url = "https://files.pythonhosted.org/packages/75/c7/20bd7fc05f0c6ea2056a4565c6f36f8968c0924f19b7d97bbfea55780e73/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740", size = 2137788, upload-time = "2025-11-04T13:40:44.752Z" }, + { url = "https://files.pythonhosted.org/packages/3a/8d/34318ef985c45196e004bc46c6eab2eda437e744c124ef0dbe1ff2c9d06b/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e", size = 2340133, upload-time = "2025-11-04T13:40:46.66Z" }, + { url = "https://files.pythonhosted.org/packages/9c/59/013626bf8c78a5a5d9350d12e7697d3d4de951a75565496abd40ccd46bee/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858", size = 2324852, upload-time = "2025-11-04T13:40:48.575Z" }, + { url = "https://files.pythonhosted.org/packages/1a/d9/c248c103856f807ef70c18a4f986693a46a8ffe1602e5d361485da502d20/pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36", size = 1994679, upload-time = "2025-11-04T13:40:50.619Z" }, + { url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11", size = 2019766, upload-time = "2025-11-04T13:40:52.631Z" }, + { url = "https://files.pythonhosted.org/packages/73/7d/f2f9db34af103bea3e09735bb40b021788a5e834c81eedb541991badf8f5/pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd", size = 1981005, upload-time = "2025-11-04T13:40:54.734Z" }, + { url = "https://files.pythonhosted.org/packages/ea/28/46b7c5c9635ae96ea0fbb779e271a38129df2550f763937659ee6c5dbc65/pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a", size = 2119622, upload-time = "2025-11-04T13:40:56.68Z" }, + { url = "https://files.pythonhosted.org/packages/74/1a/145646e5687e8d9a1e8d09acb278c8535ebe9e972e1f162ed338a622f193/pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14", size = 1891725, upload-time = "2025-11-04T13:40:58.807Z" }, + { url = "https://files.pythonhosted.org/packages/23/04/e89c29e267b8060b40dca97bfc64a19b2a3cf99018167ea1677d96368273/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1", size = 1915040, upload-time = "2025-11-04T13:41:00.853Z" }, + { url = "https://files.pythonhosted.org/packages/84/a3/15a82ac7bd97992a82257f777b3583d3e84bdb06ba6858f745daa2ec8a85/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66", size = 2063691, upload-time = "2025-11-04T13:41:03.504Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/0046701313c6ef08c0c1cf0e028c67c770a4e1275ca73131563c5f2a310a/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869", size = 2213897, upload-time = "2025-11-04T13:41:05.804Z" }, + { url = "https://files.pythonhosted.org/packages/8a/cd/6bac76ecd1b27e75a95ca3a9a559c643b3afcd2dd62086d4b7a32a18b169/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2", size = 2333302, upload-time = "2025-11-04T13:41:07.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/d2/ef2074dc020dd6e109611a8be4449b98cd25e1b9b8a303c2f0fca2f2bcf7/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375", size = 2064877, upload-time = "2025-11-04T13:41:09.827Z" }, + { url = "https://files.pythonhosted.org/packages/18/66/e9db17a9a763d72f03de903883c057b2592c09509ccfe468187f2a2eef29/pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553", size = 2180680, upload-time = "2025-11-04T13:41:12.379Z" }, + { url = "https://files.pythonhosted.org/packages/d3/9e/3ce66cebb929f3ced22be85d4c2399b8e85b622db77dad36b73c5387f8f8/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90", size = 2138960, upload-time = "2025-11-04T13:41:14.627Z" }, + { url = "https://files.pythonhosted.org/packages/a6/62/205a998f4327d2079326b01abee48e502ea739d174f0a89295c481a2272e/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07", size = 2339102, upload-time = "2025-11-04T13:41:16.868Z" }, + { url = "https://files.pythonhosted.org/packages/3c/0d/f05e79471e889d74d3d88f5bd20d0ed189ad94c2423d81ff8d0000aab4ff/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb", size = 2326039, upload-time = "2025-11-04T13:41:18.934Z" }, + { url = "https://files.pythonhosted.org/packages/ec/e1/e08a6208bb100da7e0c4b288eed624a703f4d129bde2da475721a80cab32/pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23", size = 1995126, upload-time = "2025-11-04T13:41:21.418Z" }, + { url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf", size = 2015489, upload-time = "2025-11-04T13:41:24.076Z" }, + { url = "https://files.pythonhosted.org/packages/4e/bb/f7a190991ec9e3e0ba22e4993d8755bbc4a32925c0b5b42775c03e8148f9/pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0", size = 1977288, upload-time = "2025-11-04T13:41:26.33Z" }, + { url = "https://files.pythonhosted.org/packages/92/ed/77542d0c51538e32e15afe7899d79efce4b81eee631d99850edc2f5e9349/pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a", size = 2120255, upload-time = "2025-11-04T13:41:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/bb/3d/6913dde84d5be21e284439676168b28d8bbba5600d838b9dca99de0fad71/pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3", size = 1863760, upload-time = "2025-11-04T13:41:31.055Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f0/e5e6b99d4191da102f2b0eb9687aaa7f5bea5d9964071a84effc3e40f997/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c", size = 1878092, upload-time = "2025-11-04T13:41:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/71/48/36fb760642d568925953bcc8116455513d6e34c4beaa37544118c36aba6d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612", size = 2053385, upload-time = "2025-11-04T13:41:35.508Z" }, + { url = "https://files.pythonhosted.org/packages/20/25/92dc684dd8eb75a234bc1c764b4210cf2646479d54b47bf46061657292a8/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d", size = 2218832, upload-time = "2025-11-04T13:41:37.732Z" }, + { url = "https://files.pythonhosted.org/packages/e2/09/f53e0b05023d3e30357d82eb35835d0f6340ca344720a4599cd663dca599/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9", size = 2327585, upload-time = "2025-11-04T13:41:40Z" }, + { url = "https://files.pythonhosted.org/packages/aa/4e/2ae1aa85d6af35a39b236b1b1641de73f5a6ac4d5a7509f77b814885760c/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660", size = 2041078, upload-time = "2025-11-04T13:41:42.323Z" }, + { url = "https://files.pythonhosted.org/packages/cd/13/2e215f17f0ef326fc72afe94776edb77525142c693767fc347ed6288728d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9", size = 2173914, upload-time = "2025-11-04T13:41:45.221Z" }, + { url = "https://files.pythonhosted.org/packages/02/7a/f999a6dcbcd0e5660bc348a3991c8915ce6599f4f2c6ac22f01d7a10816c/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3", size = 2129560, upload-time = "2025-11-04T13:41:47.474Z" }, + { url = "https://files.pythonhosted.org/packages/3a/b1/6c990ac65e3b4c079a4fb9f5b05f5b013afa0f4ed6780a3dd236d2cbdc64/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf", size = 2329244, upload-time = "2025-11-04T13:41:49.992Z" }, + { url = "https://files.pythonhosted.org/packages/d9/02/3c562f3a51afd4d88fff8dffb1771b30cfdfd79befd9883ee094f5b6c0d8/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470", size = 2331955, upload-time = "2025-11-04T13:41:54.079Z" }, + { url = "https://files.pythonhosted.org/packages/5c/96/5fb7d8c3c17bc8c62fdb031c47d77a1af698f1d7a406b0f79aaa1338f9ad/pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa", size = 1988906, upload-time = "2025-11-04T13:41:56.606Z" }, + { url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c", size = 1981607, upload-time = "2025-11-04T13:41:58.889Z" }, + { url = "https://files.pythonhosted.org/packages/9f/ed/068e41660b832bb0b1aa5b58011dea2a3fe0ba7861ff38c4d4904c1c1a99/pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008", size = 1974769, upload-time = "2025-11-04T13:42:01.186Z" }, +] + +[[package]] +name = "pydantic-settings" +version = "2.13.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/52/6d/fffca34caecc4a3f97bda81b2098da5e8ab7efc9a66e819074a11955d87e/pydantic_settings-2.13.1.tar.gz", hash = "sha256:b4c11847b15237fb0171e1462bf540e294affb9b86db4d9aa5c01730bdbe4025", size = 223826, upload-time = "2026-02-19T13:45:08.055Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/00/4b/ccc026168948fec4f7555b9164c724cf4125eac006e176541483d2c959be/pydantic_settings-2.13.1-py3-none-any.whl", hash = "sha256:d56fd801823dbeae7f0975e1f8c8e25c258eb75d278ea7abb5d9cebb01b56237", size = 58929, upload-time = "2026-02-19T13:45:06.034Z" }, +] + +[[package]] +name = "pygments" +version = "2.19.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" }, +] + +[[package]] +name = "pyjwt" +version = "2.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5c/5a/b46fa56bf322901eee5b0454a34343cdbdae202cd421775a8ee4e42fd519/pyjwt-2.11.0.tar.gz", hash = "sha256:35f95c1f0fbe5d5ba6e43f00271c275f7a1a4db1dab27bf708073b75318ea623", size = 98019, upload-time = "2026-01-30T19:59:55.694Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6f/01/c26ce75ba460d5cd503da9e13b21a33804d38c2165dec7b716d06b13010c/pyjwt-2.11.0-py3-none-any.whl", hash = "sha256:94a6bde30eb5c8e04fee991062b534071fd1439ef58d2adc9ccb823e7bcd0469", size = 28224, upload-time = "2026-01-30T19:59:54.539Z" }, +] + +[package.optional-dependencies] +crypto = [ + { name = "cryptography" }, +] + +[[package]] +name = "pyperclip" +version = "1.11.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e8/52/d87eba7cb129b81563019d1679026e7a112ef76855d6159d24754dbd2a51/pyperclip-1.11.0.tar.gz", hash = "sha256:244035963e4428530d9e3a6101a1ef97209c6825edab1567beac148ccc1db1b6", size = 12185, upload-time = "2025-09-26T14:40:37.245Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/df/80/fc9d01d5ed37ba4c42ca2b55b4339ae6e200b456be3a1aaddf4a9fa99b8c/pyperclip-1.11.0-py3-none-any.whl", hash = "sha256:299403e9ff44581cb9ba2ffeed69c7aa96a008622ad0c46cb575ca75b5b84273", size = 11063, upload-time = "2025-09-26T14:40:36.069Z" }, +] + +[[package]] +name = "python-dotenv" +version = "1.2.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz", hash = "sha256:2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3", size = 50135, upload-time = "2026-03-01T16:00:26.196Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl", hash = "sha256:1d8214789a24de455a8b8bd8ae6fe3c6b69a5e3d64aa8a8e5d68e694bbcb285a", size = 22101, upload-time = "2026-03-01T16:00:25.09Z" }, +] + +[[package]] +name = "python-multipart" +version = "0.0.22" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/01/979e98d542a70714b0cb2b6728ed0b7c46792b695e3eaec3e20711271ca3/python_multipart-0.0.22.tar.gz", hash = "sha256:7340bef99a7e0032613f56dc36027b959fd3b30a787ed62d310e951f7c3a3a58", size = 37612, upload-time = "2026-01-25T10:15:56.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/d0/397f9626e711ff749a95d96b7af99b9c566a9bb5129b8e4c10fc4d100304/python_multipart-0.0.22-py3-none-any.whl", hash = "sha256:2b2cd894c83d21bf49d702499531c7bafd057d730c201782048f7945d82de155", size = 24579, upload-time = "2026-01-25T10:15:54.811Z" }, +] + +[[package]] +name = "pywin32" +version = "311" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700, upload-time = "2025-07-14T20:13:26.471Z" }, + { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700, upload-time = "2025-07-14T20:13:28.243Z" }, + { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318, upload-time = "2025-07-14T20:13:30.348Z" }, + { url = "https://files.pythonhosted.org/packages/c9/31/097f2e132c4f16d99a22bfb777e0fd88bd8e1c634304e102f313af69ace5/pywin32-311-cp314-cp314-win32.whl", hash = "sha256:b7a2c10b93f8986666d0c803ee19b5990885872a7de910fc460f9b0c2fbf92ee", size = 8840714, upload-time = "2025-07-14T20:13:32.449Z" }, + { url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl", hash = "sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87", size = 9656800, upload-time = "2025-07-14T20:13:34.312Z" }, + { url = "https://files.pythonhosted.org/packages/c0/d2/21af5c535501a7233e734b8af901574572da66fcc254cb35d0609c9080dd/pywin32-311-cp314-cp314-win_arm64.whl", hash = "sha256:a508e2d9025764a8270f93111a970e1d0fbfc33f4153b388bb649b7eec4f9b42", size = 8932540, upload-time = "2025-07-14T20:13:36.379Z" }, +] + +[[package]] +name = "pywin32-ctypes" +version = "0.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/85/9f/01a1a99704853cb63f253eea009390c88e7131c67e66a0a02099a8c917cb/pywin32-ctypes-0.2.3.tar.gz", hash = "sha256:d162dc04946d704503b2edc4d55f3dba5c1d539ead017afa00142c38b9885755", size = 29471, upload-time = "2024-08-14T10:15:34.626Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8", size = 30756, upload-time = "2024-08-14T10:15:33.187Z" }, +] + +[[package]] +name = "pyyaml" +version = "6.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960, upload-time = "2025-09-25T21:33:16.546Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669, upload-time = "2025-09-25T21:32:23.673Z" }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252, upload-time = "2025-09-25T21:32:25.149Z" }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081, upload-time = "2025-09-25T21:32:26.575Z" }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159, upload-time = "2025-09-25T21:32:27.727Z" }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626, upload-time = "2025-09-25T21:32:28.878Z" }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613, upload-time = "2025-09-25T21:32:30.178Z" }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115, upload-time = "2025-09-25T21:32:31.353Z" }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427, upload-time = "2025-09-25T21:32:32.58Z" }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090, upload-time = "2025-09-25T21:32:33.659Z" }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246, upload-time = "2025-09-25T21:32:34.663Z" }, + { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814, upload-time = "2025-09-25T21:32:35.712Z" }, + { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809, upload-time = "2025-09-25T21:32:36.789Z" }, + { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454, upload-time = "2025-09-25T21:32:37.966Z" }, + { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355, upload-time = "2025-09-25T21:32:39.178Z" }, + { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175, upload-time = "2025-09-25T21:32:40.865Z" }, + { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228, upload-time = "2025-09-25T21:32:42.084Z" }, + { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194, upload-time = "2025-09-25T21:32:43.362Z" }, + { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429, upload-time = "2025-09-25T21:32:57.844Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912, upload-time = "2025-09-25T21:32:59.247Z" }, + { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108, upload-time = "2025-09-25T21:32:44.377Z" }, + { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641, upload-time = "2025-09-25T21:32:45.407Z" }, + { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901, upload-time = "2025-09-25T21:32:48.83Z" }, + { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132, upload-time = "2025-09-25T21:32:50.149Z" }, + { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261, upload-time = "2025-09-25T21:32:51.808Z" }, + { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272, upload-time = "2025-09-25T21:32:52.941Z" }, + { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923, upload-time = "2025-09-25T21:32:54.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062, upload-time = "2025-09-25T21:32:55.767Z" }, + { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, +] + +[[package]] +name = "referencing" +version = "0.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036, upload-time = "2025-10-13T15:30:48.871Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl", hash = "sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231", size = 26766, upload-time = "2025-10-13T15:30:47.625Z" }, +] + +[[package]] +name = "rich" +version = "14.3.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/c6/f3b320c27991c46f43ee9d856302c70dc2d0fb2dba4842ff739d5f46b393/rich-14.3.3.tar.gz", hash = "sha256:b8daa0b9e4eef54dd8cf7c86c03713f53241884e814f4e2f5fb342fe520f639b", size = 230582, upload-time = "2026-02-19T17:23:12.474Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/25/b208c5683343959b670dc001595f2f3737e051da617f66c31f7c4fa93abc/rich-14.3.3-py3-none-any.whl", hash = "sha256:793431c1f8619afa7d3b52b2cdec859562b950ea0d4b6b505397612db8d5362d", size = 310458, upload-time = "2026-02-19T17:23:13.732Z" }, +] + +[[package]] +name = "rich-rst" +version = "1.3.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "docutils" }, + { name = "rich" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bc/6d/a506aaa4a9eaa945ed8ab2b7347859f53593864289853c5d6d62b77246e0/rich_rst-1.3.2.tar.gz", hash = "sha256:a1196fdddf1e364b02ec68a05e8ff8f6914fee10fbca2e6b6735f166bb0da8d4", size = 14936, upload-time = "2025-10-14T16:49:45.332Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/2f/b4530fbf948867702d0a3f27de4a6aab1d156f406d72852ab902c4d04de9/rich_rst-1.3.2-py3-none-any.whl", hash = "sha256:a99b4907cbe118cf9d18b0b44de272efa61f15117c61e39ebdc431baf5df722a", size = 12567, upload-time = "2025-10-14T16:49:42.953Z" }, +] + +[[package]] +name = "rpds-py" +version = "0.30.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/af/3f2f423103f1113b36230496629986e0ef7e199d2aa8392452b484b38ced/rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84", size = 69469, upload-time = "2025-11-30T20:24:38.837Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2", size = 374887, upload-time = "2025-11-30T20:22:41.812Z" }, + { url = "https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8", size = 358904, upload-time = "2025-11-30T20:22:43.479Z" }, + { url = "https://files.pythonhosted.org/packages/58/70/faed8186300e3b9bdd138d0273109784eea2396c68458ed580f885dfe7ad/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4", size = 389945, upload-time = "2025-11-30T20:22:44.819Z" }, + { url = "https://files.pythonhosted.org/packages/bd/a8/073cac3ed2c6387df38f71296d002ab43496a96b92c823e76f46b8af0543/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136", size = 407783, upload-time = "2025-11-30T20:22:46.103Z" }, + { url = "https://files.pythonhosted.org/packages/77/57/5999eb8c58671f1c11eba084115e77a8899d6e694d2a18f69f0ba471ec8b/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7", size = 515021, upload-time = "2025-11-30T20:22:47.458Z" }, + { url = "https://files.pythonhosted.org/packages/e0/af/5ab4833eadc36c0a8ed2bc5c0de0493c04f6c06de223170bd0798ff98ced/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2", size = 414589, upload-time = "2025-11-30T20:22:48.872Z" }, + { url = "https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6", size = 394025, upload-time = "2025-11-30T20:22:50.196Z" }, + { url = "https://files.pythonhosted.org/packages/91/c4/fc70cd0249496493500e7cc2de87504f5aa6509de1e88623431fec76d4b6/rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e", size = 408895, upload-time = "2025-11-30T20:22:51.87Z" }, + { url = "https://files.pythonhosted.org/packages/58/95/d9275b05ab96556fefff73a385813eb66032e4c99f411d0795372d9abcea/rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d", size = 422799, upload-time = "2025-11-30T20:22:53.341Z" }, + { url = "https://files.pythonhosted.org/packages/06/c1/3088fc04b6624eb12a57eb814f0d4997a44b0d208d6cace713033ff1a6ba/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7", size = 572731, upload-time = "2025-11-30T20:22:54.778Z" }, + { url = "https://files.pythonhosted.org/packages/d8/42/c612a833183b39774e8ac8fecae81263a68b9583ee343db33ab571a7ce55/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31", size = 599027, upload-time = "2025-11-30T20:22:56.212Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/525a50f45b01d70005403ae0e25f43c0384369ad24ffe46e8d9068b50086/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95", size = 563020, upload-time = "2025-11-30T20:22:58.2Z" }, + { url = "https://files.pythonhosted.org/packages/0b/5d/47c4655e9bcd5ca907148535c10e7d489044243cc9941c16ed7cd53be91d/rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d", size = 223139, upload-time = "2025-11-30T20:23:00.209Z" }, + { url = "https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15", size = 240224, upload-time = "2025-11-30T20:23:02.008Z" }, + { url = "https://files.pythonhosted.org/packages/24/95/ffd128ed1146a153d928617b0ef673960130be0009c77d8fbf0abe306713/rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1", size = 230645, upload-time = "2025-11-30T20:23:03.43Z" }, + { url = "https://files.pythonhosted.org/packages/ff/1b/b10de890a0def2a319a2626334a7f0ae388215eb60914dbac8a3bae54435/rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a", size = 364443, upload-time = "2025-11-30T20:23:04.878Z" }, + { url = "https://files.pythonhosted.org/packages/0d/bf/27e39f5971dc4f305a4fb9c672ca06f290f7c4e261c568f3dea16a410d47/rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e", size = 353375, upload-time = "2025-11-30T20:23:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/40/58/442ada3bba6e8e6615fc00483135c14a7538d2ffac30e2d933ccf6852232/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000", size = 383850, upload-time = "2025-11-30T20:23:07.825Z" }, + { url = "https://files.pythonhosted.org/packages/14/14/f59b0127409a33c6ef6f5c1ebd5ad8e32d7861c9c7adfa9a624fc3889f6c/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db", size = 392812, upload-time = "2025-11-30T20:23:09.228Z" }, + { url = "https://files.pythonhosted.org/packages/b3/66/e0be3e162ac299b3a22527e8913767d869e6cc75c46bd844aa43fb81ab62/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2", size = 517841, upload-time = "2025-11-30T20:23:11.186Z" }, + { url = "https://files.pythonhosted.org/packages/3d/55/fa3b9cf31d0c963ecf1ba777f7cf4b2a2c976795ac430d24a1f43d25a6ba/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa", size = 408149, upload-time = "2025-11-30T20:23:12.864Z" }, + { url = "https://files.pythonhosted.org/packages/60/ca/780cf3b1a32b18c0f05c441958d3758f02544f1d613abf9488cd78876378/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083", size = 383843, upload-time = "2025-11-30T20:23:14.638Z" }, + { url = "https://files.pythonhosted.org/packages/82/86/d5f2e04f2aa6247c613da0c1dd87fcd08fa17107e858193566048a1e2f0a/rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9", size = 396507, upload-time = "2025-11-30T20:23:16.105Z" }, + { url = "https://files.pythonhosted.org/packages/4b/9a/453255d2f769fe44e07ea9785c8347edaf867f7026872e76c1ad9f7bed92/rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0", size = 414949, upload-time = "2025-11-30T20:23:17.539Z" }, + { url = "https://files.pythonhosted.org/packages/a3/31/622a86cdc0c45d6df0e9ccb6becdba5074735e7033c20e401a6d9d0e2ca0/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94", size = 565790, upload-time = "2025-11-30T20:23:19.029Z" }, + { url = "https://files.pythonhosted.org/packages/1c/5d/15bbf0fb4a3f58a3b1c67855ec1efcc4ceaef4e86644665fff03e1b66d8d/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08", size = 590217, upload-time = "2025-11-30T20:23:20.885Z" }, + { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806, upload-time = "2025-11-30T20:23:22.488Z" }, + { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341, upload-time = "2025-11-30T20:23:24.449Z" }, + { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768, upload-time = "2025-11-30T20:23:25.908Z" }, + { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099, upload-time = "2025-11-30T20:23:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192, upload-time = "2025-11-30T20:23:29.151Z" }, + { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080, upload-time = "2025-11-30T20:23:30.785Z" }, + { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841, upload-time = "2025-11-30T20:23:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670, upload-time = "2025-11-30T20:23:33.742Z" }, + { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005, upload-time = "2025-11-30T20:23:35.253Z" }, + { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112, upload-time = "2025-11-30T20:23:36.842Z" }, + { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049, upload-time = "2025-11-30T20:23:38.343Z" }, + { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661, upload-time = "2025-11-30T20:23:40.263Z" }, + { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606, upload-time = "2025-11-30T20:23:42.186Z" }, + { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126, upload-time = "2025-11-30T20:23:44.086Z" }, + { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371, upload-time = "2025-11-30T20:23:46.004Z" }, + { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298, upload-time = "2025-11-30T20:23:47.696Z" }, + { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604, upload-time = "2025-11-30T20:23:49.501Z" }, + { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391, upload-time = "2025-11-30T20:23:50.96Z" }, + { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868, upload-time = "2025-11-30T20:23:52.494Z" }, + { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747, upload-time = "2025-11-30T20:23:54.036Z" }, + { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795, upload-time = "2025-11-30T20:23:55.556Z" }, + { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330, upload-time = "2025-11-30T20:23:57.033Z" }, + { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194, upload-time = "2025-11-30T20:23:58.637Z" }, + { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340, upload-time = "2025-11-30T20:24:00.2Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765, upload-time = "2025-11-30T20:24:01.759Z" }, + { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834, upload-time = "2025-11-30T20:24:03.687Z" }, + { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470, upload-time = "2025-11-30T20:24:05.232Z" }, + { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630, upload-time = "2025-11-30T20:24:06.878Z" }, + { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148, upload-time = "2025-11-30T20:24:08.445Z" }, + { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030, upload-time = "2025-11-30T20:24:10.956Z" }, + { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570, upload-time = "2025-11-30T20:24:12.735Z" }, + { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532, upload-time = "2025-11-30T20:24:14.634Z" }, +] + +[[package]] +name = "secretstorage" +version = "3.5.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "jeepney" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1c/03/e834bcd866f2f8a49a85eaff47340affa3bfa391ee9912a952a1faa68c7b/secretstorage-3.5.0.tar.gz", hash = "sha256:f04b8e4689cbce351744d5537bf6b1329c6fc68f91fa666f60a380edddcd11be", size = 19884, upload-time = "2025-11-23T19:02:53.191Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl", hash = "sha256:0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137", size = 15554, upload-time = "2025-11-23T19:02:51.545Z" }, +] + +[[package]] +name = "sse-starlette" +version = "3.3.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "starlette" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5a/9f/c3695c2d2d4ef70072c3a06992850498b01c6bc9be531950813716b426fa/sse_starlette-3.3.2.tar.gz", hash = "sha256:678fca55a1945c734d8472a6cad186a55ab02840b4f6786f5ee8770970579dcd", size = 32326, upload-time = "2026-02-28T11:24:34.36Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/61/28/8cb142d3fe80c4a2d8af54ca0b003f47ce0ba920974e7990fa6e016402d1/sse_starlette-3.3.2-py3-none-any.whl", hash = "sha256:5c3ea3dad425c601236726af2f27689b74494643f57017cafcb6f8c9acfbb862", size = 14270, upload-time = "2026-02-28T11:24:32.984Z" }, +] + +[[package]] +name = "starlette" +version = "0.52.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c4/68/79977123bb7be889ad680d79a40f339082c1978b5cfcf62c2d8d196873ac/starlette-0.52.1.tar.gz", hash = "sha256:834edd1b0a23167694292e94f597773bc3f89f362be6effee198165a35d62933", size = 2653702, upload-time = "2026-01-18T13:34:11.062Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/0d/13d1d239a25cbfb19e740db83143e95c772a1fe10202dda4b76792b114dd/starlette-0.52.1-py3-none-any.whl", hash = "sha256:0029d43eb3d273bc4f83a08720b4912ea4b071087a3b48db01b7c839f7954d74", size = 74272, upload-time = "2026-01-18T13:34:09.188Z" }, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, +] + +[[package]] +name = "typing-inspection" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, +] + +[[package]] +name = "uncalled-for" +version = "0.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/02/7c/b5b7d8136f872e3f13b0584e576886de0489d7213a12de6bebf29ff6ebfc/uncalled_for-0.2.0.tar.gz", hash = "sha256:b4f8fdbcec328c5a113807d653e041c5094473dd4afa7c34599ace69ccb7e69f", size = 49488, upload-time = "2026-02-27T17:40:58.137Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ff/7f/4320d9ce3be404e6310b915c3629fe27bf1e2f438a1a7a3cb0396e32e9a9/uncalled_for-0.2.0-py3-none-any.whl", hash = "sha256:2c0bd338faff5f930918f79e7eb9ff48290df2cb05fcc0b40a7f334e55d4d85f", size = 11351, upload-time = "2026-02-27T17:40:56.804Z" }, +] + +[[package]] +name = "uvicorn" +version = "0.41.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/32/ce/eeb58ae4ac36fe09e3842eb02e0eb676bf2c53ae062b98f1b2531673efdd/uvicorn-0.41.0.tar.gz", hash = "sha256:09d11cf7008da33113824ee5a1c6422d89fbc2ff476540d69a34c87fab8b571a", size = 82633, upload-time = "2026-02-16T23:07:24.1Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/e4/d04a086285c20886c0daad0e026f250869201013d18f81d9ff5eada73a88/uvicorn-0.41.0-py3-none-any.whl", hash = "sha256:29e35b1d2c36a04b9e180d4007ede3bcb32a85fbdfd6c6aeb3f26839de088187", size = 68783, upload-time = "2026-02-16T23:07:22.357Z" }, +] + +[[package]] +name = "watchfiles" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c2/c9/8869df9b2a2d6c59d79220a4db37679e74f807c559ffe5265e08b227a210/watchfiles-1.1.1.tar.gz", hash = "sha256:a173cb5c16c4f40ab19cecf48a534c409f7ea983ab8fed0741304a1c0a31b3f2", size = 94440, upload-time = "2025-10-14T15:06:21.08Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bb/f4/f750b29225fe77139f7ae5de89d4949f5a99f934c65a1f1c0b248f26f747/watchfiles-1.1.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:130e4876309e8686a5e37dba7d5e9bc77e6ed908266996ca26572437a5271e18", size = 404321, upload-time = "2025-10-14T15:05:02.063Z" }, + { url = "https://files.pythonhosted.org/packages/2b/f9/f07a295cde762644aa4c4bb0f88921d2d141af45e735b965fb2e87858328/watchfiles-1.1.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5f3bde70f157f84ece3765b42b4a52c6ac1a50334903c6eaf765362f6ccca88a", size = 391783, upload-time = "2025-10-14T15:05:03.052Z" }, + { url = "https://files.pythonhosted.org/packages/bc/11/fc2502457e0bea39a5c958d86d2cb69e407a4d00b85735ca724bfa6e0d1a/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14e0b1fe858430fc0251737ef3824c54027bedb8c37c38114488b8e131cf8219", size = 449279, upload-time = "2025-10-14T15:05:04.004Z" }, + { url = "https://files.pythonhosted.org/packages/e3/1f/d66bc15ea0b728df3ed96a539c777acfcad0eb78555ad9efcaa1274688f0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f27db948078f3823a6bb3b465180db8ebecf26dd5dae6f6180bd87383b6b4428", size = 459405, upload-time = "2025-10-14T15:05:04.942Z" }, + { url = "https://files.pythonhosted.org/packages/be/90/9f4a65c0aec3ccf032703e6db02d89a157462fbb2cf20dd415128251cac0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:059098c3a429f62fc98e8ec62b982230ef2c8df68c79e826e37b895bc359a9c0", size = 488976, upload-time = "2025-10-14T15:05:05.905Z" }, + { url = "https://files.pythonhosted.org/packages/37/57/ee347af605d867f712be7029bb94c8c071732a4b44792e3176fa3c612d39/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bfb5862016acc9b869bb57284e6cb35fdf8e22fe59f7548858e2f971d045f150", size = 595506, upload-time = "2025-10-14T15:05:06.906Z" }, + { url = "https://files.pythonhosted.org/packages/a8/78/cc5ab0b86c122047f75e8fc471c67a04dee395daf847d3e59381996c8707/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:319b27255aacd9923b8a276bb14d21a5f7ff82564c744235fc5eae58d95422ae", size = 474936, upload-time = "2025-10-14T15:05:07.906Z" }, + { url = "https://files.pythonhosted.org/packages/62/da/def65b170a3815af7bd40a3e7010bf6ab53089ef1b75d05dd5385b87cf08/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c755367e51db90e75b19454b680903631d41f9e3607fbd941d296a020c2d752d", size = 456147, upload-time = "2025-10-14T15:05:09.138Z" }, + { url = "https://files.pythonhosted.org/packages/57/99/da6573ba71166e82d288d4df0839128004c67d2778d3b566c138695f5c0b/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c22c776292a23bfc7237a98f791b9ad3144b02116ff10d820829ce62dff46d0b", size = 630007, upload-time = "2025-10-14T15:05:10.117Z" }, + { url = "https://files.pythonhosted.org/packages/a8/51/7439c4dd39511368849eb1e53279cd3454b4a4dbace80bab88feeb83c6b5/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:3a476189be23c3686bc2f4321dd501cb329c0a0469e77b7b534ee10129ae6374", size = 622280, upload-time = "2025-10-14T15:05:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/95/9c/8ed97d4bba5db6fdcdb2b298d3898f2dd5c20f6b73aee04eabe56c59677e/watchfiles-1.1.1-cp313-cp313-win32.whl", hash = "sha256:bf0a91bfb5574a2f7fc223cf95eeea79abfefa404bf1ea5e339c0c1560ae99a0", size = 272056, upload-time = "2025-10-14T15:05:12.156Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f3/c14e28429f744a260d8ceae18bf58c1d5fa56b50d006a7a9f80e1882cb0d/watchfiles-1.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:52e06553899e11e8074503c8e716d574adeeb7e68913115c4b3653c53f9bae42", size = 288162, upload-time = "2025-10-14T15:05:13.208Z" }, + { url = "https://files.pythonhosted.org/packages/dc/61/fe0e56c40d5cd29523e398d31153218718c5786b5e636d9ae8ae79453d27/watchfiles-1.1.1-cp313-cp313-win_arm64.whl", hash = "sha256:ac3cc5759570cd02662b15fbcd9d917f7ecd47efe0d6b40474eafd246f91ea18", size = 277909, upload-time = "2025-10-14T15:05:14.49Z" }, + { url = "https://files.pythonhosted.org/packages/79/42/e0a7d749626f1e28c7108a99fb9bf524b501bbbeb9b261ceecde644d5a07/watchfiles-1.1.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:563b116874a9a7ce6f96f87cd0b94f7faf92d08d0021e837796f0a14318ef8da", size = 403389, upload-time = "2025-10-14T15:05:15.777Z" }, + { url = "https://files.pythonhosted.org/packages/15/49/08732f90ce0fbbc13913f9f215c689cfc9ced345fb1bcd8829a50007cc8d/watchfiles-1.1.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3ad9fe1dae4ab4212d8c91e80b832425e24f421703b5a42ef2e4a1e215aff051", size = 389964, upload-time = "2025-10-14T15:05:16.85Z" }, + { url = "https://files.pythonhosted.org/packages/27/0d/7c315d4bd5f2538910491a0393c56bf70d333d51bc5b34bee8e68e8cea19/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce70f96a46b894b36eba678f153f052967a0d06d5b5a19b336ab0dbbd029f73e", size = 448114, upload-time = "2025-10-14T15:05:17.876Z" }, + { url = "https://files.pythonhosted.org/packages/c3/24/9e096de47a4d11bc4df41e9d1e61776393eac4cb6eb11b3e23315b78b2cc/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cb467c999c2eff23a6417e58d75e5828716f42ed8289fe6b77a7e5a91036ca70", size = 460264, upload-time = "2025-10-14T15:05:18.962Z" }, + { url = "https://files.pythonhosted.org/packages/cc/0f/e8dea6375f1d3ba5fcb0b3583e2b493e77379834c74fd5a22d66d85d6540/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:836398932192dae4146c8f6f737d74baeac8b70ce14831a239bdb1ca882fc261", size = 487877, upload-time = "2025-10-14T15:05:20.094Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/df24cfc6424a12deb41503b64d42fbea6b8cb357ec62ca84a5a3476f654a/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:743185e7372b7bc7c389e1badcc606931a827112fbbd37f14c537320fca08620", size = 595176, upload-time = "2025-10-14T15:05:21.134Z" }, + { url = "https://files.pythonhosted.org/packages/8f/b5/853b6757f7347de4e9b37e8cc3289283fb983cba1ab4d2d7144694871d9c/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:afaeff7696e0ad9f02cbb8f56365ff4686ab205fcf9c4c5b6fdfaaa16549dd04", size = 473577, upload-time = "2025-10-14T15:05:22.306Z" }, + { url = "https://files.pythonhosted.org/packages/e1/f7/0a4467be0a56e80447c8529c9fce5b38eab4f513cb3d9bf82e7392a5696b/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f7eb7da0eb23aa2ba036d4f616d46906013a68caf61b7fdbe42fc8b25132e77", size = 455425, upload-time = "2025-10-14T15:05:23.348Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e0/82583485ea00137ddf69bc84a2db88bd92ab4a6e3c405e5fb878ead8d0e7/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:831a62658609f0e5c64178211c942ace999517f5770fe9436be4c2faeba0c0ef", size = 628826, upload-time = "2025-10-14T15:05:24.398Z" }, + { url = "https://files.pythonhosted.org/packages/28/9a/a785356fccf9fae84c0cc90570f11702ae9571036fb25932f1242c82191c/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:f9a2ae5c91cecc9edd47e041a930490c31c3afb1f5e6d71de3dc671bfaca02bf", size = 622208, upload-time = "2025-10-14T15:05:25.45Z" }, + { url = "https://files.pythonhosted.org/packages/c3/f4/0872229324ef69b2c3edec35e84bd57a1289e7d3fe74588048ed8947a323/watchfiles-1.1.1-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:d1715143123baeeaeadec0528bb7441103979a1d5f6fd0e1f915383fea7ea6d5", size = 404315, upload-time = "2025-10-14T15:05:26.501Z" }, + { url = "https://files.pythonhosted.org/packages/7b/22/16d5331eaed1cb107b873f6ae1b69e9ced582fcf0c59a50cd84f403b1c32/watchfiles-1.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:39574d6370c4579d7f5d0ad940ce5b20db0e4117444e39b6d8f99db5676c52fd", size = 390869, upload-time = "2025-10-14T15:05:27.649Z" }, + { url = "https://files.pythonhosted.org/packages/b2/7e/5643bfff5acb6539b18483128fdc0ef2cccc94a5b8fbda130c823e8ed636/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7365b92c2e69ee952902e8f70f3ba6360d0d596d9299d55d7d386df84b6941fb", size = 449919, upload-time = "2025-10-14T15:05:28.701Z" }, + { url = "https://files.pythonhosted.org/packages/51/2e/c410993ba5025a9f9357c376f48976ef0e1b1aefb73b97a5ae01a5972755/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bfff9740c69c0e4ed32416f013f3c45e2ae42ccedd1167ef2d805c000b6c71a5", size = 460845, upload-time = "2025-10-14T15:05:30.064Z" }, + { url = "https://files.pythonhosted.org/packages/8e/a4/2df3b404469122e8680f0fcd06079317e48db58a2da2950fb45020947734/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b27cf2eb1dda37b2089e3907d8ea92922b673c0c427886d4edc6b94d8dfe5db3", size = 489027, upload-time = "2025-10-14T15:05:31.064Z" }, + { url = "https://files.pythonhosted.org/packages/ea/84/4587ba5b1f267167ee715b7f66e6382cca6938e0a4b870adad93e44747e6/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:526e86aced14a65a5b0ec50827c745597c782ff46b571dbfe46192ab9e0b3c33", size = 595615, upload-time = "2025-10-14T15:05:32.074Z" }, + { url = "https://files.pythonhosted.org/packages/6a/0f/c6988c91d06e93cd0bb3d4a808bcf32375ca1904609835c3031799e3ecae/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04e78dd0b6352db95507fd8cb46f39d185cf8c74e4cf1e4fbad1d3df96faf510", size = 474836, upload-time = "2025-10-14T15:05:33.209Z" }, + { url = "https://files.pythonhosted.org/packages/b4/36/ded8aebea91919485b7bbabbd14f5f359326cb5ec218cd67074d1e426d74/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c85794a4cfa094714fb9c08d4a218375b2b95b8ed1666e8677c349906246c05", size = 455099, upload-time = "2025-10-14T15:05:34.189Z" }, + { url = "https://files.pythonhosted.org/packages/98/e0/8c9bdba88af756a2fce230dd365fab2baf927ba42cd47521ee7498fd5211/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:74d5012b7630714b66be7b7b7a78855ef7ad58e8650c73afc4c076a1f480a8d6", size = 630626, upload-time = "2025-10-14T15:05:35.216Z" }, + { url = "https://files.pythonhosted.org/packages/2a/84/a95db05354bf2d19e438520d92a8ca475e578c647f78f53197f5a2f17aaf/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:8fbe85cb3201c7d380d3d0b90e63d520f15d6afe217165d7f98c9c649654db81", size = 622519, upload-time = "2025-10-14T15:05:36.259Z" }, + { url = "https://files.pythonhosted.org/packages/1d/ce/d8acdc8de545de995c339be67711e474c77d643555a9bb74a9334252bd55/watchfiles-1.1.1-cp314-cp314-win32.whl", hash = "sha256:3fa0b59c92278b5a7800d3ee7733da9d096d4aabcfabb9a928918bd276ef9b9b", size = 272078, upload-time = "2025-10-14T15:05:37.63Z" }, + { url = "https://files.pythonhosted.org/packages/c4/c9/a74487f72d0451524be827e8edec251da0cc1fcf111646a511ae752e1a3d/watchfiles-1.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:c2047d0b6cea13b3316bdbafbfa0c4228ae593d995030fda39089d36e64fc03a", size = 287664, upload-time = "2025-10-14T15:05:38.95Z" }, + { url = "https://files.pythonhosted.org/packages/df/b8/8ac000702cdd496cdce998c6f4ee0ca1f15977bba51bdf07d872ebdfc34c/watchfiles-1.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:842178b126593addc05acf6fce960d28bc5fae7afbaa2c6c1b3a7b9460e5be02", size = 277154, upload-time = "2025-10-14T15:05:39.954Z" }, + { url = "https://files.pythonhosted.org/packages/47/a8/e3af2184707c29f0f14b1963c0aace6529f9d1b8582d5b99f31bbf42f59e/watchfiles-1.1.1-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:88863fbbc1a7312972f1c511f202eb30866370ebb8493aef2812b9ff28156a21", size = 403820, upload-time = "2025-10-14T15:05:40.932Z" }, + { url = "https://files.pythonhosted.org/packages/c0/ec/e47e307c2f4bd75f9f9e8afbe3876679b18e1bcec449beca132a1c5ffb2d/watchfiles-1.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:55c7475190662e202c08c6c0f4d9e345a29367438cf8e8037f3155e10a88d5a5", size = 390510, upload-time = "2025-10-14T15:05:41.945Z" }, + { url = "https://files.pythonhosted.org/packages/d5/a0/ad235642118090f66e7b2f18fd5c42082418404a79205cdfca50b6309c13/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f53fa183d53a1d7a8852277c92b967ae99c2d4dcee2bfacff8868e6e30b15f7", size = 448408, upload-time = "2025-10-14T15:05:43.385Z" }, + { url = "https://files.pythonhosted.org/packages/df/85/97fa10fd5ff3332ae17e7e40e20784e419e28521549780869f1413742e9d/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6aae418a8b323732fa89721d86f39ec8f092fc2af67f4217a2b07fd3e93c6101", size = 458968, upload-time = "2025-10-14T15:05:44.404Z" }, + { url = "https://files.pythonhosted.org/packages/47/c2/9059c2e8966ea5ce678166617a7f75ecba6164375f3b288e50a40dc6d489/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f096076119da54a6080e8920cbdaac3dbee667eb91dcc5e5b78840b87415bd44", size = 488096, upload-time = "2025-10-14T15:05:45.398Z" }, + { url = "https://files.pythonhosted.org/packages/94/44/d90a9ec8ac309bc26db808a13e7bfc0e4e78b6fc051078a554e132e80160/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:00485f441d183717038ed2e887a7c868154f216877653121068107b227a2f64c", size = 596040, upload-time = "2025-10-14T15:05:46.502Z" }, + { url = "https://files.pythonhosted.org/packages/95/68/4e3479b20ca305cfc561db3ed207a8a1c745ee32bf24f2026a129d0ddb6e/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a55f3e9e493158d7bfdb60a1165035f1cf7d320914e7b7ea83fe22c6023b58fc", size = 473847, upload-time = "2025-10-14T15:05:47.484Z" }, + { url = "https://files.pythonhosted.org/packages/4f/55/2af26693fd15165c4ff7857e38330e1b61ab8c37d15dc79118cdba115b7a/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c91ed27800188c2ae96d16e3149f199d62f86c7af5f5f4d2c61a3ed8cd3666c", size = 455072, upload-time = "2025-10-14T15:05:48.928Z" }, + { url = "https://files.pythonhosted.org/packages/66/1d/d0d200b10c9311ec25d2273f8aad8c3ef7cc7ea11808022501811208a750/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:311ff15a0bae3714ffb603e6ba6dbfba4065ab60865d15a6ec544133bdb21099", size = 629104, upload-time = "2025-10-14T15:05:49.908Z" }, + { url = "https://files.pythonhosted.org/packages/e3/bd/fa9bb053192491b3867ba07d2343d9f2252e00811567d30ae8d0f78136fe/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:a916a2932da8f8ab582f242c065f5c81bed3462849ca79ee357dd9551b0e9b01", size = 622112, upload-time = "2025-10-14T15:05:50.941Z" }, +] + +[[package]] +name = "websockets" +version = "16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/04/24/4b2031d72e840ce4c1ccb255f693b15c334757fc50023e4db9537080b8c4/websockets-16.0.tar.gz", hash = "sha256:5f6261a5e56e8d5c42a4497b364ea24d94d9563e8fbd44e78ac40879c60179b5", size = 179346, upload-time = "2026-01-10T09:23:47.181Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cc/9c/baa8456050d1c1b08dd0ec7346026668cbc6f145ab4e314d707bb845bf0d/websockets-16.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:878b336ac47938b474c8f982ac2f7266a540adc3fa4ad74ae96fea9823a02cc9", size = 177364, upload-time = "2026-01-10T09:22:59.333Z" }, + { url = "https://files.pythonhosted.org/packages/7e/0c/8811fc53e9bcff68fe7de2bcbe75116a8d959ac699a3200f4847a8925210/websockets-16.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:52a0fec0e6c8d9a784c2c78276a48a2bdf099e4ccc2a4cad53b27718dbfd0230", size = 175039, upload-time = "2026-01-10T09:23:01.171Z" }, + { url = "https://files.pythonhosted.org/packages/aa/82/39a5f910cb99ec0b59e482971238c845af9220d3ab9fa76dd9162cda9d62/websockets-16.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e6578ed5b6981005df1860a56e3617f14a6c307e6a71b4fff8c48fdc50f3ed2c", size = 175323, upload-time = "2026-01-10T09:23:02.341Z" }, + { url = "https://files.pythonhosted.org/packages/bd/28/0a25ee5342eb5d5f297d992a77e56892ecb65e7854c7898fb7d35e9b33bd/websockets-16.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:95724e638f0f9c350bb1c2b0a7ad0e83d9cc0c9259f3ea94e40d7b02a2179ae5", size = 184975, upload-time = "2026-01-10T09:23:03.756Z" }, + { url = "https://files.pythonhosted.org/packages/f9/66/27ea52741752f5107c2e41fda05e8395a682a1e11c4e592a809a90c6a506/websockets-16.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c0204dc62a89dc9d50d682412c10b3542d748260d743500a85c13cd1ee4bde82", size = 186203, upload-time = "2026-01-10T09:23:05.01Z" }, + { url = "https://files.pythonhosted.org/packages/37/e5/8e32857371406a757816a2b471939d51c463509be73fa538216ea52b792a/websockets-16.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:52ac480f44d32970d66763115edea932f1c5b1312de36df06d6b219f6741eed8", size = 185653, upload-time = "2026-01-10T09:23:06.301Z" }, + { url = "https://files.pythonhosted.org/packages/9b/67/f926bac29882894669368dc73f4da900fcdf47955d0a0185d60103df5737/websockets-16.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6e5a82b677f8f6f59e8dfc34ec06ca6b5b48bc4fcda346acd093694cc2c24d8f", size = 184920, upload-time = "2026-01-10T09:23:07.492Z" }, + { url = "https://files.pythonhosted.org/packages/3c/a1/3d6ccdcd125b0a42a311bcd15a7f705d688f73b2a22d8cf1c0875d35d34a/websockets-16.0-cp313-cp313-win32.whl", hash = "sha256:abf050a199613f64c886ea10f38b47770a65154dc37181bfaff70c160f45315a", size = 178255, upload-time = "2026-01-10T09:23:09.245Z" }, + { url = "https://files.pythonhosted.org/packages/6b/ae/90366304d7c2ce80f9b826096a9e9048b4bb760e44d3b873bb272cba696b/websockets-16.0-cp313-cp313-win_amd64.whl", hash = "sha256:3425ac5cf448801335d6fdc7ae1eb22072055417a96cc6b31b3861f455fbc156", size = 178689, upload-time = "2026-01-10T09:23:10.483Z" }, + { url = "https://files.pythonhosted.org/packages/f3/1d/e88022630271f5bd349ed82417136281931e558d628dd52c4d8621b4a0b2/websockets-16.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8cc451a50f2aee53042ac52d2d053d08bf89bcb31ae799cb4487587661c038a0", size = 177406, upload-time = "2026-01-10T09:23:12.178Z" }, + { url = "https://files.pythonhosted.org/packages/f2/78/e63be1bf0724eeb4616efb1ae1c9044f7c3953b7957799abb5915bffd38e/websockets-16.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:daa3b6ff70a9241cf6c7fc9e949d41232d9d7d26fd3522b1ad2b4d62487e9904", size = 175085, upload-time = "2026-01-10T09:23:13.511Z" }, + { url = "https://files.pythonhosted.org/packages/bb/f4/d3c9220d818ee955ae390cf319a7c7a467beceb24f05ee7aaaa2414345ba/websockets-16.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:fd3cb4adb94a2a6e2b7c0d8d05cb94e6f1c81a0cf9dc2694fb65c7e8d94c42e4", size = 175328, upload-time = "2026-01-10T09:23:14.727Z" }, + { url = "https://files.pythonhosted.org/packages/63/bc/d3e208028de777087e6fb2b122051a6ff7bbcca0d6df9d9c2bf1dd869ae9/websockets-16.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:781caf5e8eee67f663126490c2f96f40906594cb86b408a703630f95550a8c3e", size = 185044, upload-time = "2026-01-10T09:23:15.939Z" }, + { url = "https://files.pythonhosted.org/packages/ad/6e/9a0927ac24bd33a0a9af834d89e0abc7cfd8e13bed17a86407a66773cc0e/websockets-16.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:caab51a72c51973ca21fa8a18bd8165e1a0183f1ac7066a182ff27107b71e1a4", size = 186279, upload-time = "2026-01-10T09:23:17.148Z" }, + { url = "https://files.pythonhosted.org/packages/b9/ca/bf1c68440d7a868180e11be653c85959502efd3a709323230314fda6e0b3/websockets-16.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:19c4dc84098e523fd63711e563077d39e90ec6702aff4b5d9e344a60cb3c0cb1", size = 185711, upload-time = "2026-01-10T09:23:18.372Z" }, + { url = "https://files.pythonhosted.org/packages/c4/f8/fdc34643a989561f217bb477cbc47a3a07212cbda91c0e4389c43c296ebf/websockets-16.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:a5e18a238a2b2249c9a9235466b90e96ae4795672598a58772dd806edc7ac6d3", size = 184982, upload-time = "2026-01-10T09:23:19.652Z" }, + { url = "https://files.pythonhosted.org/packages/dd/d1/574fa27e233764dbac9c52730d63fcf2823b16f0856b3329fc6268d6ae4f/websockets-16.0-cp314-cp314-win32.whl", hash = "sha256:a069d734c4a043182729edd3e9f247c3b2a4035415a9172fd0f1b71658a320a8", size = 177915, upload-time = "2026-01-10T09:23:21.458Z" }, + { url = "https://files.pythonhosted.org/packages/8a/f1/ae6b937bf3126b5134ce1f482365fde31a357c784ac51852978768b5eff4/websockets-16.0-cp314-cp314-win_amd64.whl", hash = "sha256:c0ee0e63f23914732c6d7e0cce24915c48f3f1512ec1d079ed01fc629dab269d", size = 178381, upload-time = "2026-01-10T09:23:22.715Z" }, + { url = "https://files.pythonhosted.org/packages/06/9b/f791d1db48403e1f0a27577a6beb37afae94254a8c6f08be4a23e4930bc0/websockets-16.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:a35539cacc3febb22b8f4d4a99cc79b104226a756aa7400adc722e83b0d03244", size = 177737, upload-time = "2026-01-10T09:23:24.523Z" }, + { url = "https://files.pythonhosted.org/packages/bd/40/53ad02341fa33b3ce489023f635367a4ac98b73570102ad2cdd770dacc9a/websockets-16.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:b784ca5de850f4ce93ec85d3269d24d4c82f22b7212023c974c401d4980ebc5e", size = 175268, upload-time = "2026-01-10T09:23:25.781Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/6158d4e459b984f949dcbbb0c5d270154c7618e11c01029b9bbd1bb4c4f9/websockets-16.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:569d01a4e7fba956c5ae4fc988f0d4e187900f5497ce46339c996dbf24f17641", size = 175486, upload-time = "2026-01-10T09:23:27.033Z" }, + { url = "https://files.pythonhosted.org/packages/e5/2d/7583b30208b639c8090206f95073646c2c9ffd66f44df967981a64f849ad/websockets-16.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:50f23cdd8343b984957e4077839841146f67a3d31ab0d00e6b824e74c5b2f6e8", size = 185331, upload-time = "2026-01-10T09:23:28.259Z" }, + { url = "https://files.pythonhosted.org/packages/45/b0/cce3784eb519b7b5ad680d14b9673a31ab8dcb7aad8b64d81709d2430aa8/websockets-16.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:152284a83a00c59b759697b7f9e9cddf4e3c7861dd0d964b472b70f78f89e80e", size = 186501, upload-time = "2026-01-10T09:23:29.449Z" }, + { url = "https://files.pythonhosted.org/packages/19/60/b8ebe4c7e89fb5f6cdf080623c9d92789a53636950f7abacfc33fe2b3135/websockets-16.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:bc59589ab64b0022385f429b94697348a6a234e8ce22544e3681b2e9331b5944", size = 186062, upload-time = "2026-01-10T09:23:31.368Z" }, + { url = "https://files.pythonhosted.org/packages/88/a8/a080593f89b0138b6cba1b28f8df5673b5506f72879322288b031337c0b8/websockets-16.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:32da954ffa2814258030e5a57bc73a3635463238e797c7375dc8091327434206", size = 185356, upload-time = "2026-01-10T09:23:32.627Z" }, + { url = "https://files.pythonhosted.org/packages/c2/b6/b9afed2afadddaf5ebb2afa801abf4b0868f42f8539bfe4b071b5266c9fe/websockets-16.0-cp314-cp314t-win32.whl", hash = "sha256:5a4b4cc550cb665dd8a47f868c8d04c8230f857363ad3c9caf7a0c3bf8c61ca6", size = 178085, upload-time = "2026-01-10T09:23:33.816Z" }, + { url = "https://files.pythonhosted.org/packages/9f/3e/28135a24e384493fa804216b79a6a6759a38cc4ff59118787b9fb693df93/websockets-16.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b14dc141ed6d2dde437cddb216004bcac6a1df0935d79656387bd41632ba0bbd", size = 178531, upload-time = "2026-01-10T09:23:35.016Z" }, + { url = "https://files.pythonhosted.org/packages/6f/28/258ebab549c2bf3e64d2b0217b973467394a9cea8c42f70418ca2c5d0d2e/websockets-16.0-py3-none-any.whl", hash = "sha256:1637db62fad1dc833276dded54215f2c7fa46912301a24bd94d45d46a011ceec", size = 171598, upload-time = "2026-01-10T09:23:45.395Z" }, +] + +[[package]] +name = "zipp" +version = "3.23.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/02/0f2892c661036d50ede074e376733dca2ae7c6eb617489437771209d4180/zipp-3.23.0.tar.gz", hash = "sha256:a07157588a12518c9d4034df3fbbee09c814741a33ff63c05fa29d26a2404166", size = 25547, upload-time = "2025-06-08T17:06:39.4Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl", hash = "sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e", size = 10276, upload-time = "2025-06-08T17:06:38.034Z" }, +] From dd2b244285daabed4ea19593db7ddd7ff16a3280 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Thu, 5 Mar 2026 12:43:38 +0100 Subject: [PATCH 19/29] [ODM-13126] Add to Earthfile --- Earthfile | 30 +++++++++++++++++++- mcp-server/__pycache__/main.cpython-314.pyc | Bin 1145 -> 0 bytes mcp-server/{ => src}/main.py | 0 3 files changed, 29 insertions(+), 1 deletion(-) delete mode 100644 mcp-server/__pycache__/main.cpython-314.pyc rename mcp-server/{ => src}/main.py (100%) diff --git a/Earthfile b/Earthfile index 15871389..46556980 100644 --- a/Earthfile +++ b/Earthfile @@ -170,16 +170,44 @@ stoplight: FROM nginxinc/nginx-unprivileged:1.29.5-alpine COPY +build/v1/odmApi.yaml /usr/share/nginx/html/ - COPY +build/v1/odmApi.json /usr/share/nginx/html/ COPY openapi/stoplight/fs / ARG --required OPENAPI_VERSION SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/stoplight:${OPENAPI_VERSION} SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/stoplight:latest +openapi-mcp-server: + FROM astral/uv:0.10.7-python3.13-trixie-slim + + RUN groupadd --system --gid 999 nonroot \ + && useradd --system --gid 999 --uid 999 --create-home nonroot + USER nonroot + + WORKDIR /app + + ENV PYTHONUNBUFFERED=1 + ENV PYTHONDONTWRITEBYTECODE=1 + ENV UV_SYSTEM_PYTHON=1 + ENV UV_LINK_MODE=copy + + COPY mcp-server/pyproject.toml mcp-server/uv.lock . + RUN uv sync --frozen --no-cache --no-dev + + COPY mcp-server/src /app/src + COPY +build/v1/odmApi.yaml /app/src/. + + # Run the application using uv + ENTRYPOINT ["uv"] + CMD ["run", "src/main.py"] + + ARG --required OPENAPI_VERSION + SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/openapi-mcp-server:${OPENAPI_VERSION} + SAVE IMAGE --push ${HARBOR_DOCKER_REGISTRY}/openapi-mcp-server:latest + main: BUILD +swagger BUILD +stoplight + BUILD +openapi-mcp-server BUILD +docs BUILD +r-api-client BUILD +python-api-client diff --git a/mcp-server/__pycache__/main.cpython-314.pyc b/mcp-server/__pycache__/main.cpython-314.pyc deleted file mode 100644 index 856a55a0bd4c6f7460c26676a3b82eebbb361cbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1145 zcmb7C&2Q646o2;kBTk%zY*?UKs+3ZwLREU$N+7YSC|M{GrM0{uAtc9glSyMWu_Jo| zG}5AQ;X@oiTy~G;1l;%=;KC6oQlmkf;KHp4B&0pc_aKmOQ($gZ*y|reJdDxXR|SA6#~Oqmb{f z#giw{D7Zo){gL}D6$C074yiM(o^e8QzGzT&`S`*u@;(@Rv>XGF(0mbmEwR)#oiS+@I8uFF$r{zGvb=tz_v}b zt1hYA{cIYqz~(8a#EYV0txmPjsbRa}JJle;BlTL~H|=4~6tRq)jK?!F6tul3@R|7m z{fR--VZX~6-o(+?I*t9-^sDU#o(uRp;IBS>!M1HA2*O*?-od{2pudI0JNRW=fp~gL z%e~fey=3~{VpsX3 zLo#!J-`%Axed3iqv0-iMzjn2roVr!MQNCZ?nCzCfHT;*GjIJ8SN!9J#FNRDyd=@ZR;TEw>xjpNKaC4E! Date: Thu, 5 Mar 2026 15:10:02 +0100 Subject: [PATCH 20/29] [ODM-13126] Remove json format --- build.gradle.kts | 2 -- .../genestack/openapi/MergeSpecifications.kt | 20 ++++--------------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index b199067f..579d27c3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,7 +26,6 @@ val processorsControllerFilePath = "${sourceDirectory}/${processorsControllerFil val openApiVersion: String = System.getenv("OPENAPI_VERSION") val mergedFileName = "odmApi.yaml" val mergedFilePath = "${sourceDirectory}/${mergedFileName}" -val mergedFilePathJson = "${sourceDirectory}/odmApi.json" tasks { val downloadSpec by registering(DownloadSpecification::class) { @@ -46,7 +45,6 @@ tasks { .map { layout.projectDirectory.file("${sourceDirectory}/${it.name}") } }) outputFile.set(layout.projectDirectory.file(mergedFilePath)) - outputFileJson.set(layout.projectDirectory.file(mergedFilePathJson)) } val generateOdmApiPython by registering(GenerateTask::class) { dependsOn(mergeSpecifications) diff --git a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt index 72e323f8..940938cd 100644 --- a/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt +++ b/buildSrc/src/main/kotlin/com/genestack/openapi/MergeSpecifications.kt @@ -4,14 +4,11 @@ import org.gradle.api.DefaultTask import org.gradle.api.file.RegularFile import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty -import org.gradle.api.tasks.Optional import org.gradle.api.tasks.OutputFile import org.gradle.api.tasks.TaskAction import org.gradle.api.tasks.InputFiles import tools.jackson.databind.ObjectMapper -import tools.jackson.databind.SerializationFeature -import tools.jackson.databind.json.JsonMapper import tools.jackson.dataformat.yaml.YAMLFactory @@ -23,25 +20,16 @@ abstract class MergeSpecifications : DefaultTask() { @get:OutputFile abstract val outputFile: RegularFileProperty - @get:OutputFile - @get:Optional - abstract val outputFileJson: RegularFileProperty - @TaskAction fun merge() { - val yamlMapper = ObjectMapper(YAMLFactory()) - val jsonMapper = JsonMapper.builder().enable(SerializationFeature.INDENT_OUTPUT).build() + val objectMapper = ObjectMapper(YAMLFactory()) val mergedNode = inputFiles .get().map { it.asFile } .filterNot { it == outputFile.get().asFile } - .map { yamlMapper.readTree(it) } - .reduce { acc, node -> yamlMapper.updateValue(acc, node) } - - yamlMapper.writeValue(outputFile.get().asFile, mergedNode) + .map { objectMapper.readTree(it) } + .reduce { acc, node -> objectMapper.updateValue(acc, node) } - if (outputFileJson.isPresent) { - jsonMapper.writeValue(outputFileJson.get().asFile, mergedNode) - } + objectMapper.writeValue(outputFile.get().asFile, mergedNode) } } From 4fc1d3389c84e643cd76e270737dbfda624cc0f2 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Tue, 10 Mar 2026 12:47:55 +0100 Subject: [PATCH 21/29] Expose odmApi yaml file as a resource --- mcp-server/src/main.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 634867b4..b92fc7ee 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -4,8 +4,10 @@ import httpx import yaml from fastmcp import FastMCP +from fastmcp.resources import HttpResource odm_url = os.environ.get("ODM_URL") +# odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team'). # for local testing odm_token = os.environ.get("ODM_TOKEN", "tknRoot") server_host = os.environ.get("SERVER_HOST", "0.0.0.0") server_port = os.environ.get("SERVER_PORT", 8080) @@ -28,5 +30,14 @@ client=client, ) +mcp.add_resource(HttpResource( + uri="resource://documentation-yaml", + url=odm_url + "/swagger/yaml/odm.yaml", + name="ODM API Documentation", + description="ODM API documentation in yaml ", + mime_type="application/yaml" +)) + + if __name__ == "__main__": mcp.run(transport="streamable-http", host=server_host, port=server_port) From a1717d01b976b99d4af9b696344c129a7560f935 Mon Sep 17 00:00:00 2001 From: Kunitsyn Oleg Date: Tue, 10 Mar 2026 13:48:46 +0100 Subject: [PATCH 22/29] [ODM-13126] Fix spec resource declaration --- Earthfile | 2 +- mcp-server/src/main.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Earthfile b/Earthfile index 46556980..858e7df1 100644 --- a/Earthfile +++ b/Earthfile @@ -148,7 +148,7 @@ swagger: COPY +build/v1 /usr/share/nginx/html/yaml/ COPY openapi/swagger/fs / - RUN rm -f /usr/share/nginx/html/yaml/odmApi.yaml /usr/share/nginx/html/yaml/odmApi.json + RUN rm -f /usr/share/nginx/html/yaml/odm.yaml /usr/share/nginx/html/yaml/processorsController.yaml RUN apk add bash --no-cache && \ rewrite_entrypoint.sh && \ apk del bash && \ diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index b92fc7ee..6ac870c5 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -5,6 +5,7 @@ import yaml from fastmcp import FastMCP from fastmcp.resources import HttpResource +from pydantic import AnyUrl odm_url = os.environ.get("ODM_URL") # odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team'). # for local testing @@ -31,13 +32,12 @@ ) mcp.add_resource(HttpResource( - uri="resource://documentation-yaml", - url=odm_url + "/swagger/yaml/odm.yaml", + uri=AnyUrl("resource://documentation-yaml"), + url=odm_url + "/swagger/yaml/odmApi.yaml", name="ODM API Documentation", - description="ODM API documentation in yaml ", + description="ODM API documentation in yaml", mime_type="application/yaml" )) - if __name__ == "__main__": mcp.run(transport="streamable-http", host=server_host, port=server_port) From 828657414d9ac34b6e6dca44a76926f72fe3cbe8 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Tue, 10 Mar 2026 16:59:45 +0100 Subject: [PATCH 23/29] Expose tools --- mcp-server/src/main.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 6ac870c5..188dc49b 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -3,12 +3,13 @@ import httpx import yaml +import json from fastmcp import FastMCP -from fastmcp.resources import HttpResource +from fastmcp.resources import HttpResource, FileResource from pydantic import AnyUrl odm_url = os.environ.get("ODM_URL") -# odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team'). # for local testing +# odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing odm_token = os.environ.get("ODM_TOKEN", "tknRoot") server_host = os.environ.get("SERVER_HOST", "0.0.0.0") server_port = os.environ.get("SERVER_PORT", 8080) @@ -31,13 +32,14 @@ client=client, ) -mcp.add_resource(HttpResource( - uri=AnyUrl("resource://documentation-yaml"), - url=odm_url + "/swagger/yaml/odmApi.yaml", - name="ODM API Documentation", - description="ODM API documentation in yaml", - mime_type="application/yaml" -)) +@mcp.tool(description="Returns url of ODM API server") +def get_base_url() -> str: + return odm_url + +@mcp.tool(description="First tool to call, when starting to work with ODM API Documentation. Gets all documentation in json format") +def inspect_documentation() -> str: + return json.dumps(openapi_spec) + if __name__ == "__main__": mcp.run(transport="streamable-http", host=server_host, port=server_port) From ecafe2530bdde9744700e51c10bd985c95656e1f Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Tue, 10 Mar 2026 17:13:31 +0100 Subject: [PATCH 24/29] Add alternative mcp (won't be deployed) scaffolding --- mcp-server/src/alternative_main.py | 59 ++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 mcp-server/src/alternative_main.py diff --git a/mcp-server/src/alternative_main.py b/mcp-server/src/alternative_main.py new file mode 100644 index 00000000..e5ff7bd6 --- /dev/null +++ b/mcp-server/src/alternative_main.py @@ -0,0 +1,59 @@ +import os +from pathlib import Path + +import httpx +import yaml +from fastmcp import FastMCP +from pathlib import Path + +DOCS_DIR = Path("docs").resolve() +server_host = os.environ.get("SERVER_HOST", "0.0.0.0") +server_port = os.environ.get("SERVER_PORT", 8080) + +# Load OpenAPI spec from the same directory as this file +spec_path = DOCS_DIR / "odmApi.yaml" +with spec_path.open("r", encoding="utf-8") as fh: + openapi_spec = yaml.safe_load(fh) + +mcp = FastMCP( + name="ODM API docs MCP Server", + instructions=""" + This server provides documentation on using the ODM API for data querying, retrieval, import (ingestion), and curation. + Its main purpose is to provide the LLM with correct schemas of endpoints. + Call get_odm_api_overview() to get more details about the API. + """ +) + +type Tag = str + +@mcp.resource("data://server-uri") +def server_uri() -> str: + return server_host + +@mcp.tool(description="Get an overview of functions available in ODM") +def get_odm_api_overview() -> str: + return "This is an overview" + +@mcp.tool(description="List all available querying and retrieval endpoint groups (tags)") +def list_query_retrieval_endpoints() -> list[Tag]: + return ['a', 'b'] + +@mcp.tool(description="List all available import and curation endpoint groups (tags)") +def list_import_curation_endpoints() -> list[Tag]: + return ['c', 'd'] + +@mcp.tool(description="List all paths with descriptions that belong to a specific group (tag)") +def list_methods_in_group(group: Tag) -> list[dict]: + return [{'endpoint': '/test/test', 'method': 'get', 'summary': 'This is test'}] + +@mcp.tool(description='Get operations, parameters, responces and schemas of an enpoint') +def get_path_item(endpoint: str) -> dict: + return {'test': 'test'} + +@mcp.tool(description='Get data schema definition by $ref') +def get_schema_by_ref(ref: str) -> dict: + return {'schema': 'test'} + + +if __name__ == "__main__": + mcp.run(transport="streamable-http", host=server_host, port=server_port) From 1fa51cfd21cdf089ce38131bc38705876f791073 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Tue, 10 Mar 2026 17:19:40 +0100 Subject: [PATCH 25/29] minor fix --- mcp-server/src/alternative_main.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mcp-server/src/alternative_main.py b/mcp-server/src/alternative_main.py index e5ff7bd6..17bc0b70 100644 --- a/mcp-server/src/alternative_main.py +++ b/mcp-server/src/alternative_main.py @@ -7,8 +7,11 @@ from pathlib import Path DOCS_DIR = Path("docs").resolve() + +odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing +odm_token = os.environ.get("ODM_TOKEN", "tknRoot") server_host = os.environ.get("SERVER_HOST", "0.0.0.0") -server_port = os.environ.get("SERVER_PORT", 8080) +server_port = os.environ.get("SERVER_PORT", 9080) # Load OpenAPI spec from the same directory as this file spec_path = DOCS_DIR / "odmApi.yaml" @@ -26,9 +29,9 @@ type Tag = str -@mcp.resource("data://server-uri") -def server_uri() -> str: - return server_host +@mcp.tool(description="Fetch url of the ODM API server") +def get_base_url() -> str: + return odm_url @mcp.tool(description="Get an overview of functions available in ODM") def get_odm_api_overview() -> str: From 9dcd1c95407754b10083d29c3027665557b11a90 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Tue, 10 Mar 2026 18:48:00 +0100 Subject: [PATCH 26/29] Alternative MCP server for documentation discovery --- mcp-server/src/alternative_main.py | 50 ++++++++++++++++++++++-------- mcp-server/src/main.py | 4 +-- 2 files changed, 39 insertions(+), 15 deletions(-) diff --git a/mcp-server/src/alternative_main.py b/mcp-server/src/alternative_main.py index 17bc0b70..4236c106 100644 --- a/mcp-server/src/alternative_main.py +++ b/mcp-server/src/alternative_main.py @@ -6,18 +6,39 @@ from fastmcp import FastMCP from pathlib import Path -DOCS_DIR = Path("docs").resolve() - -odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing +odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # pre-defined value for local testing odm_token = os.environ.get("ODM_TOKEN", "tknRoot") server_host = os.environ.get("SERVER_HOST", "0.0.0.0") server_port = os.environ.get("SERVER_PORT", 9080) # Load OpenAPI spec from the same directory as this file -spec_path = DOCS_DIR / "odmApi.yaml" +spec_path = Path(__file__).with_name("odmApi.yaml") with spec_path.open("r", encoding="utf-8") as fh: openapi_spec = yaml.safe_load(fh) +user_tags: list[str] = [tag["name"] for tag in openapi_spec["tags"] if "as User" in tag["name"]] +curator_tags: list[str] = [tag["name"] for tag in openapi_spec["tags"] if "as Curator" in tag["name"]] + +# Map $ref string -> schema dict, e.g. "#/components/schemas/Study" -> {...} +schemas_by_ref: dict[str, dict] = { + f"#/components/schemas/{name}": schema + for name, schema in openapi_spec["components"]["schemas"].items() +} + +# Map tag -> list of {endpoint, method, summary, operationId} +methods_by_tag: dict[str, list[dict]] = {} +for _path, _path_item in openapi_spec["paths"].items(): + for _method, _operation in _path_item.items(): + if not isinstance(_operation, dict): + continue + for _tag in _operation.get("tags", []): + methods_by_tag.setdefault(_tag, []).append({ + "endpoint": _path, + "method": _method, + "summary": _operation.get("summary", ""), + "operationId": _operation.get("operationId", ""), + }) + mcp = FastMCP( name="ODM API docs MCP Server", instructions=""" @@ -35,27 +56,30 @@ def get_base_url() -> str: @mcp.tool(description="Get an overview of functions available in ODM") def get_odm_api_overview() -> str: - return "This is an overview" + return """ + - You can explore and retrieve data from the ODM using the API endpoints. These endpoints are marked with suffix "as User". Get a list of all tools by calling "list_query_retrieval_endpoints" tool. + - You can also create studies and curate data. The main functions available are Create a new study and Curate Data. These endpoints are marked with suffix "as Curator". Get a list of all tools by calling "list_import_curation_endpoints" tool. + """ @mcp.tool(description="List all available querying and retrieval endpoint groups (tags)") def list_query_retrieval_endpoints() -> list[Tag]: - return ['a', 'b'] + return user_tags @mcp.tool(description="List all available import and curation endpoint groups (tags)") def list_import_curation_endpoints() -> list[Tag]: - return ['c', 'd'] + return curator_tags -@mcp.tool(description="List all paths with descriptions that belong to a specific group (tag)") +@mcp.tool(description='List all paths with descriptions that belong to a specific group (tag) (e.g. "Study SPoT as User")') def list_methods_in_group(group: Tag) -> list[dict]: - return [{'endpoint': '/test/test', 'method': 'get', 'summary': 'This is test'}] + return methods_by_tag.get(group, []) -@mcp.tool(description='Get operations, parameters, responces and schemas of an enpoint') +@mcp.tool(description='Get operations, parameters, responses and schemas of an endpoint (e.g. "/api/v1/as-curator/studies/{id}")') def get_path_item(endpoint: str) -> dict: - return {'test': 'test'} + return openapi_spec["paths"].get(endpoint, {}) -@mcp.tool(description='Get data schema definition by $ref') +@mcp.tool(description='Get data schema definition by $ref (e.g. "#/components/schemas/Study")') def get_schema_by_ref(ref: str) -> dict: - return {'schema': 'test'} + return schemas_by_ref.get(ref, {}) if __name__ == "__main__": diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 188dc49b..6a94d5a3 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -8,8 +8,8 @@ from fastmcp.resources import HttpResource, FileResource from pydantic import AnyUrl -odm_url = os.environ.get("ODM_URL") -# odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing +# odm_url = os.environ.get("ODM_URL") +odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing odm_token = os.environ.get("ODM_TOKEN", "tknRoot") server_host = os.environ.get("SERVER_HOST", "0.0.0.0") server_port = os.environ.get("SERVER_PORT", 8080) From a4ebec37ea77de81099a3aab453a1530126901b8 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Wed, 11 Mar 2026 17:45:24 +0100 Subject: [PATCH 27/29] pass-through authorization with Genestack-api-token --- mcp-server/src/main.py | 63 ++++++++++++++++++++++++++++++++---------- 1 file changed, 48 insertions(+), 15 deletions(-) diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 6a94d5a3..004b45c4 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -1,41 +1,74 @@ import os +import json +from contextvars import ContextVar from pathlib import Path +from typing import Any import httpx import yaml -import json from fastmcp import FastMCP -from fastmcp.resources import HttpResource, FileResource -from pydantic import AnyUrl +from fastmcp.server.middleware import Middleware, MiddlewareContext, CallNext +from fastmcp.server.dependencies import get_http_headers -# odm_url = os.environ.get("ODM_URL") -odm_url = os.environ.get("ODM_URL", 'https://develop-oak.dev.gs.team') # for local testing -odm_token = os.environ.get("ODM_TOKEN", "tknRoot") -server_host = os.environ.get("SERVER_HOST", "0.0.0.0") -server_port = os.environ.get("SERVER_PORT", 8080) +# Per-request storage for the API token. +# ContextVar is asyncio-safe: each concurrent request gets its own isolated value. +current_token: ContextVar[str] = ContextVar("current_token", default="") -# Create an HTTP client for ODM API -client = httpx.AsyncClient( - base_url=odm_url, - headers={"Genestack-API-Token": f"{odm_token}"} -) +odm_url = os.environ.get("ODM_URL", "https://develop-ip.dev.gs.team") +server_host = os.environ.get("SERVER_HOST", "0.0.0.0") +server_port = int(os.environ.get("SERVER_PORT", 8080)) -# Load OpenAPI spec from the same directory as this file spec_path = Path(__file__).with_name("odmApi.yaml") with spec_path.open("r", encoding="utf-8") as fh: openapi_spec = yaml.safe_load(fh) -# Create the MCP server + +class DynamicTokenAuth(httpx.Auth): + """Injects the per-request token into every outgoing ODM API call. + + Reads from current_token ContextVar, so each concurrent MCP request + carries its own token without shared state. + """ + def auth_flow(self, request: httpx.Request): + token = current_token.get() + if token: + request.headers["Genestack-API-Token"] = token + yield request + + +class TokenExtractMiddleware(Middleware): + """Extracts the API token from the incoming HTTP request and stores it + in current_token for the duration of the MCP message handling. + """ + async def on_message(self, context: MiddlewareContext[Any], call_next: CallNext) -> Any: + headers = get_http_headers(include={"x-genestack-api-token", "authorization"}) + token = ( + headers.get("x-genestack-api-token") + or headers.get("authorization", "").removeprefix("Bearer ") + ) + token_var = current_token.set(token) + try: + return await call_next(context) + finally: + # Reset to previous value to avoid leaking across reused tasks. + current_token.reset(token_var) + + +# Single shared client — connection pooling is safe because auth is per-request via DynamicTokenAuth. +client = httpx.AsyncClient(base_url=odm_url, auth=DynamicTokenAuth()) + mcp = FastMCP.from_openapi( name="Openapi MCP Server", openapi_spec=openapi_spec, client=client, + middleware=[TokenExtractMiddleware()], ) @mcp.tool(description="Returns url of ODM API server") def get_base_url() -> str: return odm_url + @mcp.tool(description="First tool to call, when starting to work with ODM API Documentation. Gets all documentation in json format") def inspect_documentation() -> str: return json.dumps(openapi_spec) From 3354bd453ac1e57785d89c7f667637ab7132871c Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Wed, 11 Mar 2026 17:45:49 +0100 Subject: [PATCH 28/29] Remove documentation endpoing --- mcp-server/src/main.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 004b45c4..750dc33f 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -69,10 +69,5 @@ def get_base_url() -> str: return odm_url -@mcp.tool(description="First tool to call, when starting to work with ODM API Documentation. Gets all documentation in json format") -def inspect_documentation() -> str: - return json.dumps(openapi_spec) - - if __name__ == "__main__": mcp.run(transport="streamable-http", host=server_host, port=server_port) From 999edeed2529b07bea65a82f0f012607500ac0c0 Mon Sep 17 00:00:00 2001 From: "i.panchenko" Date: Wed, 11 Mar 2026 18:11:42 +0100 Subject: [PATCH 29/29] Limit exposure to only user's endpoints --- mcp-server/src/main.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/mcp-server/src/main.py b/mcp-server/src/main.py index 750dc33f..e7415b0f 100644 --- a/mcp-server/src/main.py +++ b/mcp-server/src/main.py @@ -7,6 +7,7 @@ import httpx import yaml from fastmcp import FastMCP +from fastmcp.server.openapi import RouteMap, MCPType from fastmcp.server.middleware import Middleware, MiddlewareContext, CallNext from fastmcp.server.dependencies import get_http_headers @@ -62,6 +63,23 @@ async def on_message(self, context: MiddlewareContext[Any], call_next: CallNext) openapi_spec=openapi_spec, client=client, middleware=[TokenExtractMiddleware()], + route_maps=[ + # Include "as User" endpoints + RouteMap( + pattern=r"^/api/v1/as-user/.*", + mcp_type=MCPType.TOOL, + ), + # Include "as Curator" endpoints + # RouteMap( + # pattern=r"^/api/v1/as-curator/.*", + # mcp_type=MCPType.TOOL, + # ), + # exclude anything else + RouteMap( + pattern=r".*", + mcp_type=MCPType.EXCLUDE, + ) + ] ) @mcp.tool(description="Returns url of ODM API server")